LINUX.ORG.RU

Кто не разрабатывал на Си, тот не разработчик?

 , ,


3

2

Недавно услышал примерно такую фразу:

«Кто не разрабатывал на Си, тот не разработчик»

Вопрос: насколько глубоко нужно погрузиться в разработку на Си, чтобы стать тру-разработчиком (для сферы, не связанной с деланием ПО для железа)?

Ну не в прод же на Си писать будущему сайтостроителю гeймдеву одинэснику девелоперу?! С другой стороны, написать и забилдить пробный хелловорлд с мэллоком и указателями будет не-безполезно и для скрипто-писателя, но достаточно ли? Или стоит отталкиваться от сферы деятельности: каждому написать примерно то, что он будет в дальнейшем делать (или с чем работать) на других ЯП? Например, бэкендщику стоит написать свой веб-сервер и крад-аппу, игроделу свою 2/3d игрушку и т.д. А может нужно написать свой модуль/либу для другого ЯП (основного)?

Или же: "Си не нужен, все программирующие - разработчики" ?

Ваше предложение по достижению тру-девелопер-левела:

  • попрограммируй микроконтроллеры, запили патч ядра Linux'a, а потом лезь в калашный ряд веб-/мобайл-/иной-разработки
  • напиши что-то из своей сферы
  • реализуй модуль/либу для другого ЯП
  • Си не нужен
  • другое

... Вопрос: насколько глубоко нужно погрузиться в разработку на Си, чтобы стать тру-разработчиком

Можно в совершенстве знать C и не быть разработчиком.
Сложный вы вопрос «подняли» ...

PS: Можно и книгу написать по разработке и при этом не быть разработчиком.

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

Мой опыт даёт такие основания.

Субъективно безусловно.

Но для объективного основания нужно понять, насколько репрезентативна ваша выборка=)

anonymous
()

Как-то плевать что там думают красноглазые «тру-программисты» дворники, у которых хобби такое — ковырять сишку между сменами.

У адекватных людей такой каши в голове не возникает.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от AUX

Кто тебе не позволяет использовать lea?

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

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

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

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

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

Проблема только в том, что этому ядру 40 лет в обед

Этого достаточно. Не нужно знать подробности (опять же по аналогии с автомобилем, не обязательно знать разницу между карбюратором и инжектором), нужно знать общий принцип действия.

Puzan ★★★★★
()

кто писал на Си, тот на любом языке пишет на Си.

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

А вы точно знаете, что такое адрес для процессора и что такое указатель в Си?

Совершенно точно знаю. Я этим занимаюсь лет 25, если не больше.

Вот в асмах указателей нет

Уверен?

Но вообще современное железо вообще никак на модель си не походит.

Есть железо, которое никогда не подходило под модель Си. Но это ничего не меняет.

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

насколько репрезентативна ваша выборка=)

На ЛОРе не принято учитывать репрезентативность ;)

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

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

Я начал с книги «Язык ассемблера для IBM PC и программирования», много лет тому назад.

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

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

AUX ★★★
()

Плеер консольный напиши и никому не показывай. Приобретённого эксприренса тебе хватит чтобы немного врубать как это всё вообще работвет.

Dark_SavanT ★★★★★
()

Ну это как сказать. Если в ANSI C не можешь, то как C-разработчик ты ноль.

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

«не прогал на x86 асме - не девелопер»

Понимать всю эту возню, размер инструкций и так далее - полезная штука. По крайней мере, желания пихнуть 100-польную структуру в аргументы вместо указателя не возникнет.

kostyarin_ ★★
()

Кто не разрабатывал на сях, тот — веб-макака. Даже всякие жабисты должны понимать си, им приходится писать биндинги и дебажить жвм.

anonymous
()

Понимать надо си, чтобы не сесть, например, так на элементарных вещах.

crutch_master ★★★★★
()
Ответ на: процессы, потоки от Edward_I
  1. как (и с помощью чего) продуктивно объяснить человеку, что такое процессы, потоки, многопоточное программирование без Си ? (это не утверждение о невозможности в форме вопроса, это вопрос)

Лучше расскажите как вы собрались объяснять потоки с помощью C и какое отношение потоки вообще к языку имеют.

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