В мире ПО для разработки ПО очень много ПО. Часть этого ПО достойно использования. Другую часть ПО трогать нельзя. Я постарался собрать несколько известных мне слов, разделив их по тому параметру, стоит ли с ними знакомиться в рамках изучения определенного раздела программирования, либо нет.
Особенно интересуют комментарии к этой схеме френдов
slach и
voidbent
(
Read more... )
Comments 57
Reply
Delphi сейчас почти не используется и не развивается, а его ниша почти полностью перекрыта C#. Поэтому, хотя нравиться он может, изучать его сейчас смысла не имеет.
поставил бы большой жирный плюс на Си
Си изучать подробнее, чем на уровне чтения исходников (т.е. при изучении C++), на мой взгляд, не имеет смысла. При составлении своего списка я руководствовался таким чудесным словом, как superseded. А радости, подобные strcat и strtok, могут надолго покалечить неокрепшую психику.
3+ даже не знаю такого компилятора =)
Это относится к g++, один мой знакомый утверждал, что версии GCC древнее 3-й не особо хороши.
надо изучать сначала DOM и ВНУТРЕННОСТИ и ПРИЦИПЫ
Это верно, без всякого сомнения. Я подразумевал, что перед изучением каких-то конкретных библиотек следует обязательно ознакомиться с идеями и понятиями, лежащими в их основе. К примеру, STL - темплейты и итераторы; jQuery - ООП в JS, функциональное программирование; XNA - векторная алгебра и графический конвейер :)
невзлюбил ORM
Почему?
насчет ( ... )
Reply
Сейчас область применения С++ полностью перекрывается другими специализированными и улучшенными в своей специализации технологиями.
Считается, что для написания GUI лучше применять C#. Для написания веб сервисов лучше применять Java в связке например с EJB (кстати, начиная с 6-й явы простенький веб сервис можно реализовать исключительно средствами J2SE), а для написания High Performance Computations компонент, Real Time систем, драйверов лучше применять чистый C в связке с OpenMP, MPI или теми-же pthread-ами, а не C++.
На фоне других технологий у С++ серьёзные проблемы и с GUI, и с Веб Сервисами (читай, обычными серверами), и с переносимостью, и с многопоточностью. C++ полностью утратил свою область применения и делу не поможет даже С++0х.
Reply
Reply
Python
Haskell
boost::spirit
Silverlight
IntelliJ IDEA
Resharper
(N)Hibernate
sed
Perl
awk
Reply
Думаю, следует добавить отдельную категорию «рекомендуется изучить в теории» и поместить туда Python, Haskell, Loki и т.п. - то, что имеет смысл знать, но применять либо нежелательно, либо лучше использовать улучшенный аналог. С моей точки зрения, Python перекрывается Ruby. А может, моя нелюбовь к Python и YAML чисто религиозная :)
boost::spirit, конечно, имеет смысл изучать в рамках Boost.
Почему ты считаешь, что Silverlight изучать можно?
Расскажи подробнее про Hibernate
Совершенно согласен с зачеркнутым Perl, я забыл о нем, составляя свой список :)
Почему пострадал awk? (Я с ним не работал, но интересно)
Регекспы сами по себе едва ли относятся именно к ПО для разработки ПО, поэтому я не стал бы добавлять sed в список. Собственно, лучше PCRE вообще ничего нету :)
Reply
(The comment has been removed)
Reply
Сразу же хочу спросить, почему в IDE нет C++ Builder`a? Да, ты прав, компилятор -- никудышний, но IDE очень удобная, особенно если есть задача склепать интерфейс. А вот VS я бы не ставил первым по списку.
Eclipse, NetBeans, dev-сpp ты обошёл серым вниманием. Рассказываю свои впечатления: уже как года два пишу на dev-cpp в домашних целях, отличная среда, особенно она удобна для acm coder`ов. Под Eclipse писал один небольшой проект на Java -- отлично, друзья говорят, что NetBeans даже на порядок удобней.
В разделе Graphics удивил пункт Cg XNA -- вообще не слышал такого. Что за зверь?
Flash -- классная технология, учить обязательно.
Reply
Cg это высокоуровневый C-подобный язык шейдеров. XNA - технология от MS, которая призвана облегчить создание DirectX-приложений за счет сокрытия всяких неприятных вещей вроде инициализации устройств: логическое продолжение MDX.
Flash мне кажется устаревшим и полным всякой гадости, оставленной ради совместимости. Сочетание этого с довольно мерзким синтаксисом ActionScript заставляет меня смотреть в сторону Silverlight и WPF.
Reply
JavaScript: Prototype - изучать можно.
C++: TR1, TR2 - изучать стоит. Loki - изучать стоит, но ни в коем случае нельзя применять на практике. MFC - изучать нельзя ни в коем случае.
C#: LINQ - изучать стоит.
Graphics: SVG - изучать можно.
Languages: Java, C, XSL - изучать стоит. С++, PHP - изучать можно. Haskell, Erlang, Prolog - изучать можно ради академического интереса.
Если интересует, могу по каждой из поправок детально объяснить почему я так считаю.
Reply
Можно в таком случае прокомментировать http://sharpc.livejournal.com/20033.html?thread=98625#t98625? На мой взгляд везде в нише Prototype следует применять jQuery, если, конечно, от программиста что-то зависит.
TR1, TR2 - изучать стоит.
Только ли в качестве подготовки к C++09 или и применять тоже?
Loki
Интересно было бы услышать подробнее, в частности, насколько он пересекается с Boost.
MFC - изучать нельзя ни в коем случае.
Согласен. Хотелось бы услышать тогда комментарии ко всем кандидатам в категорию Visual Toolkits: MFC wxWidgets WTL Qt GTK и т.п.
Graphics: SVG - изучать можно.
Интересны подробности. Но это, скорее, ближе к Flash и к PostScript, чем к DirectX?
Java, C, XSL - изучать стоит. С++, PHP - изучать можно.
Почему так? XSL оставил у меня неприятные ощущения даже по сравнению с не самым чудесным PHP templating; Java по сравнению с C#, как собственно язык, имхо, проигрывает, о C/C++ я уже написал, ну а PHP, при всех его недостатках, с 5-й версии все же наиболее пригодный для web-программирования язык, по ( ... )
Reply
> Graphics: SVG - изучать можно.
> Интересны подробности. Но это, скорее, ближе к
> Flash и к PostScript, чем к DirectX?
Да, SVG наверное надо было отнести в presentations к флешу.
Из достоинств:
- SVG это W3C стандарт, имеет открытый XML-based формат.
- Поддерживается связка SVG+JavaScript.
- Существует апачевская Java либа, позволяющая встравивать SVG графику в Java приложения.
Из недостатков:
- SVG мение распространён чем флеш.
- SVG не поддерживается Internet Exporer-ом. Есть отдельный Adobe-овский плугин для Internet Exporer-а который позволяет отображать SVG но он не позволяет встраивать SVG в структуру HTML документа.
Reply
wxWidgets - изучать можно.
WTL, Qt - изучать не стоит. WTL по тем-же причинам что и MFC, а Qt мне кажется overengineering-ом.
Reply
Руби -- изучать можно
Объективно Питон используется на порядок больше и я готов поспорить что Руби никогда не обгонит Питон по популярности.
Reply
Reply
Leave a comment