1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Какие языки программирования изучать?

Тема в разделе "Программирование", создана пользователем Pashtet, 14.08.12.

  1. Pashtet

    Pashtet Активный участник

    20.294
    96
    Всем привет!!! :)
    Племяш серьезно начал увлекаться программированием. На мой взгляд, есть реальный интерес к этому делу.
    В связи с этим, хотелось бы узнать - у многоуважаемого сообщества программистов - какие языки и технологии стоит изучать на перспективу?
    Может java для мобильных устройств или iOS. А быть может стоит усиленно заняться PHP и ASP.NET
    Или что-то еще?
     
  2. Redrik

    Redrik Активный участник

    14.021
    0
  3. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    Pashtet, java, чтобы привить любовь к порядку. При этом самый простой из популярных языков.
     
  4. sp_r00t

    sp_r00t Активный участник

    24.924
    1
    На переспективу надо изучать не языки, а само программирование.
    Изучить язык специалист может за пару часов, а птушник - за пару недель. А вот программирование - штука более серьёзная (тут же Кнута читать надо, гы) и главное - только это - переспективно. Языки приходят и уходят, а это знание гораздо более... фундаментально что ли? (если так можно выразиться о прикладной науке).
     
  5. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    Если бы было сказано "за пару дней" - я бы сказал, что это из области фантастики. А вот в таком виде даже не знаю, как реагировать.
     
  6. sp_r00t

    sp_r00t Активный участник

    24.924
    1
    The Last Winged, вот Вам сколько нужно времени для изучение нового ЯП?
     
  7. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    sp_r00t, наверное часов 80-160 работы с ним.
    Это будет уверенное владение языком и знание основных его библиотек (которые, несомненно, являются частью языков).
    Некоторые языки при этом сильно легче, чем другие. Например Java, С, Pascal или lua. Вот они гораздо быстрее выучатся.

    На уровне, который дают в университетах России, 2 дня хватит, конечно, но этот уровень - это не знание языка. Это основы основ.
     
  8. sp_r00t

    sp_r00t Активный участник

    24.924
    1
    А я вот всегда был уверен, что библиотеки - это часть реализации, но никак не языка. И что за "основные" библиотеки? Вы же хотели сказать "стандартные"? Ну это ладно, главное в другом - что значит "знать" их? Наизусть помнить все "прототипы"? Это же лишнее, сами понимаете. А иметь представление о том, что и как можно подключить - для этого много времени не нужно.

    А мне кажется, что через это время Вы будете уверенно пользоваться этим языком. Хехе, а уверенное пользование и знание - тоже разные вещи. Это как разница между знанием и умением;)
    Но это опять всё философия. Я хотел бы вернуться к основному тезису. Пусть человек потратит два дня, да пусть хоть два года на изучение языка, однако если он не будет иметь представления о тех же алгоритмах, то грош цена будет такому знанию. Поэтому программирование первично, а язык - в самом конце очереди
     
  9. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    Обычно это часть языка. std::queue, к примеру, это определенно часть языка, о чем написано в документации.

    Основные стандартные. Т.е. не все. Основные типы данных, файлы, сеть, потоки/процессы и прочее такое.

    Почему же? Есть рад областей, где это ему никогда не понадобится.
     
  10. sp_r00t

    sp_r00t Активный участник

    24.924
    1
    Помницца Вы мне вику цитировали, так что имею права ответить тем же:d
    А функция (методы/классы/etc) входящие в библиотеку не являются ни синтаксическим, ни лексическим, ни семантическим правилом. Если функция входит в Стандарт языка, то это не значит, что она входит в язык.

    Не спорю. Если он станет дворником, то это ему точно не понадобится:d
     
  11. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    Это общее описание.
    Я же дал частный случай (C++), который обязывает язык иметь std::queue (23.2.3.1).

    В вебе, к примеру, не пригодится.
     
  12. sp_r00t

    sp_r00t Активный участник

    24.924
    1
    А мне по закону на рабочем месте компьютер положен, однако это не значит, что компьютер - часть меня.
    Стандарт обязывает все реализации компиляторов языка С++ иметь std::queue. Но это не значит что std::queue является частью языка.

    Так по Вашим же словам - веб это не программирование вовсе:hah:
    А речь то идёт именно о программировании.
     
  13. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    По каким? Я такого не говорил.
     
  14. unsub

    unsub Активный участник

    641
    0
    а где же Scala/Haskell?) или они не стали "трендовыми"?)
     
  15. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    unsub, ожидаемо, что люди говорят про популярные ЯП.
     
  16. sp_r00t

    sp_r00t Активный участник

    24.924
    1
    Ну я передёрнул чуток. Там речь шла не о веб вообще, а о хтмл и вёрстке, которых обзывали программированием.

    Не стали и не станут. Серьёзные языки создают учёные, а трендовые - манагеры.
     
  17. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    Это не програмирование, но разработка.
     
  18. unsub

    unsub Активный участник

    641
    0
    The Last Winged, вопрос был про перспективу, так чем же перечисленные языки не перспективны?
     
  19. The Last Winged

    The Last Winged Активный участник

    11.862
    48
    Отсутствием спроса.
     
  20. passer-by

    passer-by Активный участник

    2.557
    64
    Pashtet, Может быть, племяннику сначала лучше определиться с областью применения программирования. Боюсь, после этого этапа, выбор языков программирования будет невелик. Не понимаю, как мальчишке может быть интересен язык программирования сам по себе. "Хотелось бы чего-нибудь этокого, ну, вообще." Поставьте ему небольшую задачу, пусть выберет пути решения и средства сам. Язык программирования - дело десятое.
     
  21. hasslich

    hasslich Активный участник

    16.643
    82
    бейсик пусть изучает. прошарит алгоритмизацию, а потом уже попрет
     
  22. БульЁн

    БульЁн Активный участник

    1.241
    0
    Когда то в далекие времена, когда я был студентом и на заре появлялся С#, я на отлично владел языком С++, так вот поступило задание накатать прогу на C# я в тот момент язык в глаза ранее не видел. Если не считать времени на поиск литературы по языку и на установку его, мне примерно минут 20 хватило чтобы почитать книженцию и выяснить как обявляются классы, наследование, циклы и прочее. Потом я пару раз заглядывал в книжу , каждый раз минут по 5 наверно, что бы выяснить как передавать функцию в качестве аргумента и еще что - то. И больше к документации этого языка я не обращался, только к документации библиотеки. Прошло время и я накатал на этом языке кучу прог, часть успешно продал.

    И могу сказать, что на овладение новым языком я потратил не более 1 часа.

    С явой в свое время было немного посложнее, но никак не более суток

    ---------- Сообщение добавлено 16.08.2012 09:34 ----------

    Язык херня.
    Разработка алгоритмов, разработка класов их иерарихии и прчее - это долго и это важно.

    Допустим вам в первые нужно сделать табуретку - выж не будете долго изучать как молотком забивать гвозди, как отверткой загручивать шурупы. Большую часть времени вы потратите чтобы нарисовать эскиз табуретки, сделать чертежи, вывести размеры и пр.
     
  23. Hermes

    Hermes Активный участник

    11.670
    1
    Пойду шефу скажу чтобы отстал от меня со своими алгоритмами. Веб - это не только интернет магазины. Браузер давно уже стал платформой.

    Сколько лет ему?
     
  24. gatto

    gatto Читатель

    1.587
    0
    Паттерны опять же :shuffle:
     
  25. Покер

    Покер Активный участник

    1.048
    0
    Qt, вобще то, не язык программирования.

    А я питона изучаю.
     
  26. хочу_вот_сказать

    хочу_вот_сказать Активный участник

    8.402
    1
    c#
     
  27. AZot

    AZot Участник

    157
    0
    Пареньку так нико и не помог в итоге. Речь идет не о времени на освоение нового языка матерым специалистом, а о том, с какого языка НАЧАТЬ что бы это было перспективно. Предлагаю ответить "какой" и "почему именно он".
     
  28. БульЁн

    БульЁн Активный участник

    1.241
    0
    каков вопрос такой ответ.

    что хочет то автор от изучения ?
     
  29. rootproc

    rootproc Активный участник

    1.151
    0
    Надо попробовать несколько.

    С практической точки зрения - php, python, ruby, javascript. Последний выучить хотя бы на уровне достаточном для использования jquery. Из остальных трех выбрать что-то по вкусу.

    Для кругозора - C, ассемблер. Но это только если есть энтомологический интерес "как там числа в процессоре складываются". А вообще для кругозора можно и на Java посмотреть, и на Scala. Сейчас на coursera как раз начался курс "Functional Programming Principles in Scala".
     
  30. E13

    E13 Модератор

    6.150
    33
    rootproc, чтобы разобраться, как числа в процессоре складываются, нужно не Си с Асмом копать, а основы организации ЭВМ :). Асм няшен почти до бесконечности, и делать на нём можно почти что угодно, но программировать на нём скорее по приколу можно. Ну или если задача - реверс-инжиниринг или что-то ещё, что требует работы с машинным кодом или чего-то низкоуровневого. Я в своё время добрался в нём до работы в PM, драйверов под Win32 и сетевых приложений, но всё зафейлил ^_^. PM (конкретно нулевое кольцо) Виндовс огораживает, для сети было интересно сырые пакеты пособирать, но что-то не заладилось - а на драйверах интерес что-то сдулся уже.

    С PHP начинать очень перспективно, потому что это вебдев. Вместе с JS/jQ (и до кучи HTML/CSS) уже может дать некоторые практически полезные навыки.

    Сам я начинал с Pascal/C/ASM, но уже несколько лет на них ничего не писал - работаю почти исключительно с вебом. Сейчас бы если возвращался - то наверное за VCPP или Java бы сел.