Розробка ·
24 лютого 2010, 19:41
1877
Нужно ли учить язык С? перед С# или джава? или перед С++?
Нужно ли учить язык С? перед С# или джава? или перед С++?
Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті
👍ПодобаєтьсяСподобалось0
Facebook
LinkedIn
59 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарівА почему именно х86? Просто архитектуру микропроцессорных систем, включая всяческие RISC и VLIW. Причем совершенно необязательно глубоко. На уровне понимания способов адресации и передачи управления.
«Учи Assembler» — асоциируеться с заучиванием всех 500 (или сколько их там сейчас) комманд x86 на память... Хотя рядовому веб-программисту они и нафиг не нужны.
Его можно выучить? — Можно. Значит выражение абсолютно корректно.
Ну, а учить его нужно конечно же не затем чтобы на нем писать, а затем чтобы понимать что фактически происходит когда выполняется написанный например на Java код. Например что происходит когда мы вызываем метод какого-то бинес бина.
Или например: как програмист может объективно понимать причины проявления race condition если он не знает что и как фактически выполняет процессор?
C++ нужно учить именно в связке с ассемблером чтобы понимать во что превращаются высокоуровневые конструкции во время выполнения.
Java или NET — учить нужно тк это фактически стандартные языки для реализации production систем в бизнесе.
Він довгі роки буде потерпати від надлишкової деталізації, та акуратності
Я б не сказав що коваль чи ювелір каліки просто стиль вироблений роками лишає слід
Мені наприклад тяжко переключатися з С на С++, а от із С на С# досить легко.
Тому все що можна написати під Вінду (робочі тулзи для проекту) пишу на С#, хоча іноді бувають тяжкі випдаки, іноді не вдається підключити сторонні DDL написані на С++ до С# коду, отоді приходиться юзати С++, а це напряжніше.
Якщо такий вирок Сникам і плюсистам, то цікавить, ,
а що ж тоді мона сказати про паскалістів та делфістів,
вони теж каліки і не можуть успішно освоїти джаб/шарп?
А вот с этого места пожалуйста подробнее... Т.е. я конечно понимаю, что многие Java/C#-кодеры выросли из Бейсика, но нельзя же это считать нормой.
В мене існують інші стереотипи
Сформовані сішники сіплюсплюсники погано надаються до програмування на Java/C# через специфічно сформований сішний стиль програмування і мишлення
учили восновном Делфи и ВБ, очевидно-же.
Может лучше перефразировать вопрос: кто из джавистов, сиплюсистов или сишарпистов учил сначала С или Ассемблер и кому это пригодилось?
Но выражение «Учи Assembler» впринципе некорректно.
Боюсь зара ти получиш по саме нехочу за ругательне слово «асємблер».
Тут на ДОУ в колах «інтелектуалів» вивчення асми грішне діло.
Якщо знаєш асму -> «низько кодиш» -> фіг поймеш високі абстракції.
Такі от існують стереотипи.
Assembler нужен не для программирования на нем, а для понимания того как все работает.
две разные парадигмы — С = типо портированный ассемблер — С++ = типо непортироуемый ассембер с частичной поддержкой ООП
Хороший вброс.
Напишите, пожалуйста, основные отличия языка С++ от языка С...
И снова о азиатском
"
Подходит во Львове иностранец к двум панам и спраушивает что-то сначала на английскомпотом по немецки, потом по испански потом еще на двух -трёх языках.
Тут один говорит:
-Куме, дивись, яка розумна людина аж на 5 мовах шварнякає. — І що це йому дало?
"
Я недавно въехал в тот стиль работы который видел в Китае, и который ты описал имет место и в Корее.
Этому помогла одна статья товарища, который занимается проблемами развитие мозга.
Так вот азиатский стиль похож на работу эволюции — случайными вариациями получать требуемый результат.
То есть после Н количества итераций получается желаемый резульат (паттерн, который далее применяется и варьируется), хотя, если бы приложить умственные усилия, можно было бы сделать намного ефективнее....
Так что не надо приводить пример Азии — там другой мир, другие подходы.
Зачем Китайцам учить инглишь, если их 1, 5 млрд?
Или, для чего им напрягать моск и подумать наперёд о способе как лучше сделать продукт, если проще прогнать вживую Монте-Крало симулицию....
Продолжу тему про латынь. — для юристов латынь важно по той причине, как западная система построена на римской системе права.
За пределами бывшего совка тяжело найти юриста без базовых знаний латыни.
Аналогично с докторами. Даже когда латынь “метрва” почему-то на “тупом западе” ееё учат.
Думаю, если через Х лет С не будет использоваться, всеравно его будут учить.
В последнее время в даташитах приводят так званный “псевдо-язык” для написания примеров, как запустить чимп в каком-нибудь режиме.
Синтаксис этого псевдо кода очень похож на С.
Кроме того, достаточно выучить граматику латыни, чтобы потом понимать грамматическую основу романо-германских языков.
О совреённом инженере. он должен — быть специалистом в своей индустрии — знать хотябы один иностранный язык (английский) — быть компьютерно грамотным.
Я не втречал специалистов на заподе с высшим образованием, кто не знает английского.
На сей мажорной ноте разрешите участие в оффтопном флуде считать законченным.
Я не ставлю перед собой задачей тебя унизить или оскорбить. Но есть реалии — ты часто категорично (а это решающий фактор который меня толкает на дискус) судиш о вещах которые объять не в состоянии или ты не имееш полной картины. А чаще всего с подростковой логикой — вот у меня так — и поэтому так везде. ничего личного — я почему за язык зацепился — это для меня очень близкое — оно меня много лет терзает — и я об этом много думаю.
— тебе как человеку с инжинерных задворок не знаю
я тут практически цитирую тебя ибо в каждом втором твоем посте ты кроиш и Украину и Киев и отечественный бизнес -, а тут тебя вдруг это задело.
Лана — давай прекращать.
Для большей убедительности аргументации надо было обложить меня трехэтажным,
Ты не слышиш
— И совершенно бесполезны в ежедневном гуглении или чтении профессиональных новостных групп.
они не пользуюцо гуглом. Юзаецо naver.
— А мы обсуждаем полное незнание языка.
именно так — полное незнание — совершенное.
— Расскажите где бы мне достать RFC на корейском? А документацию на последние Интеловские чипсеты?
тебе как человеку с инжинерных задворок не знаю.
Расскажите где бы мне достать RFC на корейском?
А документацию на последние Интеловские чипсеты?
Которые переводят уже найденную информацию. И совершенно бесполезны в ежедневном гуглении или чтении профессиональных новостных групп.
А мы обсуждаем полное незнание языка. Напомню — аналогия пошла от знания С, без понимания которого читать многие книги по программированию бесполезно.
и о чем это говорит? Я вроде бы уже привел тебе пример про сэми. Аналагично могу привести ряд других примеров — например одва. Еще раз для тех кто в танке — все что необходимо есть на родном языке ибо язык — это вторично. Когда ты мировой лидер в индустрии — все сделано под тебя.
— И уж точно без знания языка, инженер заведомо проигрывает во времени в ожидании перевода.
да это тебе надо соренвноваться — ибо это ты на задворках — это тебе надо учить язык — это тебе надо приспосабливаться. А шарящим пацанам на острии индустрии все подтягивают еще горяченьким — прямо из печки. Опять таки — я в таком же положении как и ты — ибо отечественной индустрии просто нет. Повторюсь ты не можеш судить — ибо не понимаеш о чем говориш.
Сказано ведь, есть переводчики.
А чтоб документацию прочесть глубоких знаний английского не нужно.
Как всегда не могу с вами не согласиться. Главное — это быть классным специалистом в своей области. А языка хватит и intermediate, что в принципе не сложно, да и не всем нужно.
Да неужели? Можно зайти на сайт любого производителя комплектующих или организации международных стандартов. Увы и ах, доки на азиатских языках вы найдете меньше чем в половине случаев. А уж например на хинди — никогда.
И уж точно без знания языка, инженер заведомо проигрывает во времени в ожидании перевода.
Повторюсь — азиаты английским языком владеют чуть менее чем на уровне плинтуса. Им это не нужно — они так щасливы — они не разрушали свои страны под дикие вопли -, а усердно трудились и делали свое дело. У них все свое.
— специальных журналов они не читают
переведенные
— и на выставки/семинары не ездят
тут все сплошь и рядом на родном языке
— даташиты к ним приносят уже переведенными
рядом с мной килотонны красивенных книг — все на родном языке — ВСЕ!!! Даже SEMI стандарты — ито переведено. Любая командировка — это ОБЯЗАТЕЛЬНО — наем переводчика — ибо с английским все будет плохо. На всю жизнь запомню эпизод — это так штобы было понятно в целом. Стоим в клинруме компании Foxconn (это крупнейший аутсорсер в мире которые выполняет всякое разное для монстров индустрии — en.wikipedia.org/wiki/Foxconn — вокруг меня — двое корейцев (это типа мои) — один тайванец — два китайца (из местных спецов) — один японец (с шарпа). Никто никого не понимает — в тот день не пришла переводчица — и вот один китаец немного понимал японский -, а его друг китаец чутка говорил на английском. Я тоже чутка говорю по английски -, а кореец умеет принимать мои мозговые излучения. Так и работали -, а там всегото надо было словить какойто плсишный битик. И если щас смотриш в моник от хьюлит пакарда — то может быть он был сделан именно вот такими пацанами. А если смориш в другой — не переживай он сделан также. К слову корецы гугл например не юзают в принципе — это так лирика.
—, но быть действительно хорошим специалистом не получится.
это ты как обычно про себя? Не надо делать такие глупые умозаключения когда твой опыть не позволяет этого.
Думаю, вы правы.
Т.е. и специальных журналов они не читают, и на выставки/семинары не ездят и даташиты к ним приносят уже переведенными?
Я собсно в этом контексте и привел аналогию — работать-то можно, но быть действительно хорошим специалистом не получится.
нет не нужно. Я видел сотни (это не фигура речи) людей из разных стран которые двух слов связать не могут на английском и при этом ты и многие другие пользуются результатами их работы каждый день. Ты наверное хотел спросить «нужно ли знать постсоветскому инжинеру, который полностью завязан на запад ибо все родное разрушено до тла, знать английский».
Тут наверное правильной аналогией будет: «а нужно ли инженеру знать английский? »
не нужно?
Quod licet sium, non licet sisharpum:)
А надо ли доктору/юристу учить латынь?
Знание C может помочь в понимании некоторых идиом, таких как
Но в целом, надо сначала понять надо ли работать с памятью в языке программирования: если да, то знание C, скорее всего, обязательно; однако для программирования на высокоуровневых языках, возможно, это даже помешает, вынуждая использовать неприменимые в данной сфере подходы.И тут я с вами полностью согласен. Но морды ведь разные бывают... Поэтому кроме языка нужно понимание технологии — это когда программист знает почему в данном случае нужно использовать именно этот класс, метод или (глобальнее) фреймворк. А для этого необходимо минимум 3−4 года даже для C#.
Некоторое студие так и не может понять одну вещь — написание морд к базам данных это всего лишь одно из тысяч направлений ИТ. Хотя и весьма популярное для аутсорсинга в страны третьего мира.
Я не думаю, что сейчас необходимо учить С или С++ дял того, чтобы кодить на C# или Java; -)
сарказм Не буду говорить за всех программистов, но вот каждый уважающий себя дотнетчик должен написать свой CLR-совместимый язык. Потому что, должен. Должен знать как работают компиляторы, знать msil лучше английского, выучить наизусть все API windows начиная с 3.11, а еще он должен всем ходить и рассказывать, что программист, который этого не знает — это не программист. /сарказм
Приведу один диалог:
Проблема в том, что программисты старой закалки никак не могут привыкнуть к той мысли, что кроме классического С++ есть другие высокоуровневые языки, на которых МОЖНО разрабатывать программы без лишних проблем.Чистый С нужен в случаях, если человек занимается криптографией (я сомневаюсь, что кто-то из тех, кто толкает C и С++ в массы сможет по спецификации написать реализацию RSA алгоритма) или алгоритмами, в других случаях он не нужен.
а компиляторы и интерпритаторы под определение «системный софт» не подпадают?
Просто ради смеха. А на чем сделаны все эти ваши Питоны и ПХПы? Или это тоже эмбед?
*незнающего
считаю что человека знающего С можно называть непрограммистом
А вот это зря, программирование системным софтом и ембедедом не заканчиваеться...
Нужно. Просто потом ты можешь передумать насчет C#/Java и посмотришь в другую сторону.
А что «K& R вместо азбуки» уже не в моде?
Не нужно, Но без С понимания потеряешь некоторый пласт классических технических решений.
нет. С нужно учить если нужно знать С. если нужен С++ нужно учить С++
З.Ы. Только знание языка, само по себе, тебе мало что даст...
З.З. Ы. Вообще лучше тему сразу прибить.
2. Нет. С# и Java с синтаксической точки зрения имеют очень мало общего с Pure C.
3. Не обязательно, но полезно.
Лучшее руководство для начинающих — Хэзфилд.
Да, и еще паскаль.
Перед С++ или вместе с С++, но знать С придётся, так как множество проектов смешанные и какая-то часть написана на С.
незнаю
Да
нет