LINUX.ORG.RU

Что выбрать?


0

3

Я сейчас заканчиваю первый курс универа и решил вот углубиться в С++. Как Вы посоветуете, стоит ли тратить время на него или выучить что-либо другое (Javа)?


Ответ на: комментарий от anonymous

на чистом С пусть херячит сначала. Как мне когдато обьясняли программеры с хрен каким стажем что программист обязан знать asm и архитектуру иначе это не программист а обезьяна. Ну и С досконально знать а потом уже весь этот макияж С++ java и далее.

qsloqs ★★
()
Ответ на: комментарий от adriano32

Начинающий программист думает, что в килобайте 1000 байт. А конченый програмист думает, что в километре 1024 метра

=)

Боян, да.

qsloqs ★★
()
Ответ на: комментарий от qsloqs

> Начинающий программист думает, что в килобайте 1000 байт

если он еще и знает про кибибайт, то «конченый програмист» явно ему проигрывает :)

aho
()
Ответ на: комментарий от vertexua

ты просто дурак, с промытыми мозгами

особенно это посмешило:

ava активно развивается Oracle, Google, IBM и миром Open Source и побеждает качественно и количественно .NET, который бы без существования Java просто поглотил рынок и привел к абсолютной доминации платформы от Microsoft на рынке десктопного и серверного софта.

anonymous
()
Ответ на: комментарий от qsloqs

На сях можно программить в свободное время, если уж очень припёрло. Если хочется кушать - Java, .Net

anonymous
()

Начните с поиска интересной задачи. По задаче выбирайте язык и читайте необходимую литературу. Главное чтобы нравилось.

А вообще, программист должен ориентироваться в Java, C++, Asm, CL, SQL, в чем-то скриптовом на выбор и понимать фишку .NET. Все это в любом случае пригодиться или, как минимум, улучшит понимание всей картины в целом.

Интересует еще веб-девелопинг - гляньте PHP, JavaScrpt, AJAX.

Будете вникать в C/C++ - обратите внимание на Qt, он приятный и перспективный.

Не зацикливайтесь на чем-то одном - потеряете гибкость мысли. Вспоминаются кадры, которые для примитивной странички (легко реализуется на PHP+MySQL) пишут HTML-генераторы на C++.

observer ★★★
()
Ответ на: комментарий от qsloqs

> Как мне когдато обьясняли программеры с хрен каким стажем что программист обязан знать asm и архитектуру иначе это не программист а обезьяна.

Те времена овеяны легендами, тогда программисты были настоящими мущщинами и сами писали драйвера для своих ленточных накопителей. Сейчас все деградировало, и последние мастодонты с тоской рассказывают как они первыми изобрели и реализовали на асме RPC (и правда ведь изобрели).

ТСу - надо знать пару ЯП, что нить скриптовое динамическое (питон, ява, руби и тд) и что нить статическое (С/C++). Но учить ЯП без задачи даже глупее, чем учить ин.яз без практики.

AIv ★★★★★
()
Ответ на: комментарий от KRoN73

Воспитывает software architects и Ph.D. очевидно же

anonymous
()
Ответ на: комментарий от vertexua

на С++ будешь следить за тем чтобы правильно освобождать память

Если программа правильно спроектирована, то освобождение памяти предельно просто.

В Java есть подробные дампы состояний приложения, включая все обьекты, их содержание, потоки, их состояние, списки владения различными примитивами синхронизации. В С++ будешь ловить сегфолты и дебагером пытаться отладить побитый стек. Выберешь С++ - это твоя судьба.

Не правда. При сегфолте сохраняются все данные программы, в том числе поля всех объектов, все локальные и глобальные переменные.

в С++ косяки ловятся в рамках сборки разными компиляторами, возможно и между версиями.

А для жабы всего одна юзабельная реализация. А в LSB уже четко прописано, какой ABI для C++ должен быть и все популярные компиляторы C++ под Linux его поддерживают. А косяки при сборке разными версиями одного компилятора проявляются только в случае кривого кода.

Java сообщество достаточно организованно и продуктивно, существуют такие организации как Apache, Eclipse и SpringSource, которые создали сотни библиотек и другого софта на все случаи жизни.

Вы хотите сказать, что для плюсов мало софта или библиотек?

С Java в рантайме совместимы Groovy, Scala, JRuby, Jython, Clojure и т.д. В то время в нативном коде, а особенно в С++ все далеко не на том уровне, ABI между нативными языками, и часто даже между компиляторами одного языка вообще никакое.

Да, в нативном коде между разными языками слабее, но если вам надо, собирайте все в LLVM bc :) А с ABI разных компиляторов под Linux проблема уже решена.

Deleted
()

А какая разница? На чём писать нет никакой разницы в большинстве случаев.
Учи JavaScript - это современно.

ixrws ★★★
()

Учить надо всё.

Следуй универской программе.

Параллельно самостоятельно смотри на хаскели и лиспы. Иначе будешь быдлокодером.

Найди интересные для тебя задачи. На них тренируйся. Пробуй разные подходы, разные языки.

Завались книгами.

Много читай. Много программируй.

Profit.

anonymous
()
Ответ на: комментарий от yoghurt

> бери Кнута «Искусство программирования», как всего осилишь там поднимай SICP

А мусье садист :) Имхо лучше наоборот

на выходе лиспер получится :) а чел по С++ запаривается

shty ★★★★★
()
Ответ на: комментарий от aho

> унылый вброс

Уже на три страницы хватило.

pevzi ★★★★★
()
Ответ на: комментарий от vertexua

> Как-то вы ребята не конструктивно

На вопрос

стоит ли тратить время


Конструктивный ответ может быть только один - не трать, иди работать.

LamerOk ★★★★★
()
Ответ на: комментарий от vertexua

Я жавку люблю, но сдается мне, что она нужна примерно для того же, что и C++ в некоторых случаях - писать всякие считалки, сервачки ассинхронные и прочее. Для прикладных задач она почти ассемблер. /me уже давно со слюнями смотрит на Scala, но уже год нету новых проектов, которые можно было бы начать писать на Scala. Что касается крутых либ жавских, то я их уже поднаелся, большинство фреймворков сделаны тупоголовыми интерпрайз быдлокодерами, увы. Ну нету у людей чувства прекрасного. Но есть и здоровские вещи, с жавы я еще долго не слезу.

ЗЫ. Shared VM - это полный пиз*ец. Мы тут одно приложение растаскиваем, что бы под разными VM работало, а вы хотите все в одну коробку засунуть. И сколько хипа нужно будет? 8 GB? 16 GB? Тогда перед сборкой мусора жава должны будет сообщение выдавать: «Пора пойти выпить чашечку кофе».

dizza ★★★★★
()
Ответ на: комментарий от tailgunner

Из чистого любопытства - ты сам-то хоть половину осилил?

куда уж мне. пусть вон аналитики из треда лучше осиливают, им полезно

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

>> Из чистого любопытства - ты сам-то хоть половину осилил?

куда уж мне.

ВотЪ. А у меня в теплом кэше - максимум 20% от перечисленного. Поэтому, в целях сохранения самоуважения, я считаю этот список аналогом тех самых требований к водителю %)

tailgunner ★★★★★
()
Ответ на: комментарий от newby

> О, спасибо. Наверное, самый полезный совет в этом треде :D

Большинству из этого тебя научат в универе. Ничего особенного.

anonymous
()

Где «p.s. приятного аппетита»?

Sonsee
()

Выбери юриспруденцию или экономику. В C++ денег нет.

anonymous
()
Ответ на: комментарий от aho

> лисп - для элиты, потому и мало распространен, на Java могут писать даже школьники за еду, тут явно играет денежная сторона вопроса

Дада, эта илита получает 10тыр в месяц в универах и НИИ, а средненький «школьник», который пишет на Жабе, получает «на еду» 150тыр в месяц.

anonymous
()
Ответ на: комментарий от iZEN

> Java — УНИВЕРСАЛЬНА,

Увы, но на PIC16 оно не пойдет никогда. HPC на Java тоже никто в здравом уме не занимается.

anonymous
()
Ответ на: комментарий от iZEN

> LISP-программисту, узучившему Java, будут продолжительное время недоступны её фреймворки

Они ему навсегда останутся недоступны. Просто в силу того, что у него мозги наизнанку вывернуты, и мыслить по-человечески оно уже не в состоянии.

anonymous
()
Ответ на: комментарий от Kosyak

> kdevelop для c/c++ гораздо мощнее и удобнее чем cdt.

Eclipse это вообще-то ни фига не просто IDE, это намного больше.

anonymous
()
Ответ на: комментарий от trinimak

> Если хочешь кушать, учи 1С, а не Java.

Дурак, штоле? 1Сники зарабатывают раза в два меньше жабистов.

anonymous
()
Ответ на: комментарий от Deleted

> то освобождение памяти предельно просто.

И как ты спроектируешь «предельно просто» освобождение памяти с компактификацией и без остановки треда, пока гигабайтное дерево не очистится целиком? А никак не спроектируешь. Без GC нереально. Так и будешь ловить фрагментацию и бояться удалять слишком большие структуры данных.

anonymous
()
Ответ на: комментарий от jtootf

> теоретический минимум для программиста

C++0x несуществующий попал в «минимум»? В топку!

Всякие узкоспециализированные какашки вроде OpenMP и MPI туда же. Дальше и читать не стал.

anonymous
()
Ответ на: комментарий от LamerOk

Стандарт не принят. Следовательно, его не существует. Следовательно - в топку. Нестандартные расширения компиляторов - в топку.

anonymous
()
Ответ на: комментарий от anonymous

> Они ему навсегда останутся недоступны. Просто в силу того, что у него мозги наизнанку вывернуты, и мыслить по-человечески оно уже не в состоянии.

Фиговая у тебя логика. Лисп мощнее и выразительнее Джавы. А значит извращаться и выворачивать мозги на изнанку надо таки джаверам.

anonymous
()
Ответ на: комментарий от anonymous

Стандарт не принят. Следовательно, его не существует. Следовательно - в топку

если выбирать языки по наличию принятого стандарта ISO/IEC, выбор будет невелик

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

> теоретический минимум для программиста

Пока вы будете это всё читать, сообразительные пареньки типа Линуса напишут и продадут ещё одну ОС, ЯП или СУБД. А когда закончите, глядишь, уже и в гроб пора.

А вообще смешно смотреть как некоторые надувают щёки и кичатся списками литературы. Хотя бы потому, что в этих списках системы ни на грош, и нет некой спиралевидной ступенчатости - от простых основ ко всяким сложностям. С таким же успехом можно посоветовать почитать Интернет. А взять и подсунуть автору какую-нибудь задачку да хоть из первого тома Кнута - хер решит, уверен практически на 100%.

И ещё я для себя установил правило большого пальца: если книга толще одного сантиметра, её вряд ли стоит читать от корки до корки, это скорее всего справочник - именно так его и нужно использовать.

gandjubas
()
Ответ на: комментарий от gandjubas

И ещё я для себя установил правило большого пальца

молодец, так держать. следующим пунктом развития будет палец указательный? мизинец? отказ от чтения вообще?

больше всего мне нравится то, с какой гордостью ты это пишешь. нет, ну правда

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

>> И ещё я для себя установил правило большого пальца

молодец, так держать. следующим пунктом развития будет палец указательный? мизинец? отказ от чтения вообще?

больше всего мне нравится то, с какой гордостью ты это пишешь. нет, ну правда

А ты похоже из этих - поколения пэпси с клиповым мышлением, неспособных даже одно предложение от начала до конца прочитать и осмыслить.

gandjubas
()
Ответ на: комментарий от gandjubas

ты похоже из этих - поколения пэпси с клиповым мышлением, неспособных даже одно предложение от начала до конца прочитать и осмыслить

ты знал! ты знал!

jtootf ★★★★★
()
Ответ на: комментарий от anonymous

> Стандарт не принят.

А его частичная реализация уже есть.

Нестандартные расширения компиляторов - в топку.


Ты забыл нестандартный API, нестандартные библиотеки, нестандартный мир вокруг тебя.. Или погоди-ка? Ты живешь в своём особом, бумажном мире?

LamerOk ★★★★★
()
Ответ на: комментарий от jtootf

> Физика, правила Кирхгофа, комплексное сопротивление, скорость и частота света, лагранжиан

Особенно смешной пункт из твоей ссылки, наиболее красноречиво свидетельствующий, что автор ни бэ ни мэ ни кукареку в физике и видимо - во всём остальном, если рекомендует начать со стандарта С++.

gandjubas
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.