@devops_ru

Страница 2016 из 4568
Nikolay
10.01.2017
09:02:22
вот есть хорошая книжка с примерами кода на сях, там нету в большинстве случаев ничего похожего на классы https://www.ozon.ru/context/detail/id/4187085/

код написан зубрами своего дела

Daniel
10.01.2017
09:03:17
скорее наоборот
да? питон хороший язык для всего, и С - хороший язык для написания плагинов к питону. остальные языки в той или иной степени говно. я верно усвоил вашу точку зрения?

Google
Daniel
10.01.2017
09:04:20
стоит качать? :)
да. но стоит помнить, что там за бортом оставлкны примерно 70% повседневных задач

Vladimir
10.01.2017
09:04:26
вот есть хорошая книжка с примерами кода на сях, там нету в большинстве случаев ничего похожего на классы https://www.ozon.ru/context/detail/id/4187085/
фраза "в большинстве случаев" намекает на то что если им дать разгуляться они сделают еще одно ООП на сях

Nikolay
10.01.2017
09:04:45
да? питон хороший язык для всего, и С - хороший язык для написания плагинов к питону. остальные языки в той или иной степени говно. я верно усвоил вашу точку зрения?
питон - хороший язык для многих задач, но не серебряная пуля. C - хороший язык для всего системного и низкоуровневого, других настолько же простых нет. Остальные языки большей частью отлично решают проблемы, но в более узких областях

redbeard
10.01.2017
09:05:17
Nikolay
10.01.2017
09:05:42
например, Go отлично решает задачу написания высокоскоростных серверов, но в остальном, строго имхо, он мало на что годен. Это субъективно и я вполне готов передумать, если увижу хорошие примеры других вещей

Mikhail
10.01.2017
09:05:43
А где я сказал слово “проблема”?
> Внезапно, да? навевало на то, что это выглядит забавно

Vladimir
10.01.2017
09:06:03
от твоей фразы

Nikolay
10.01.2017
09:06:09
Есть
далеко необязательно

Vladimir
10.01.2017
09:06:30
раз таки не всегда, значит даже там есть примеры. А значит хорошая вероятность что масштаб примера в книге не дал автору разгуляться

Nikolay
10.01.2017
09:06:35
стоит качать? :)
она довольно специфическая, но если каждый вечер разбирать по главе - может быть интересно и полезно

Google
Nikolay
10.01.2017
09:07:23
раз таки не всегда, значит даже там есть примеры. А значит хорошая вероятность что масштаб примера в книге не дал автору разгуляться
код, который приведен в этой книге - он из разных довольно больших проектов, включая внутренности линуха, например

Alex
10.01.2017
09:07:41
> Внезапно, да? навевало на то, что это выглядит забавно
В нашей индустрии все выглядит довольно забавно

Nikolay
10.01.2017
09:07:41
не знаю насчет "не дал разгуляться", но для многих задач подобия классов тупо не нужны

Nikolay
10.01.2017
09:08:04
и это даже я сейчас не топлю за фп, который на сях затруднен

а в ядре как будто не делают ООП на сях?
в некоторых задачах делают, почему нет

Vladimir
10.01.2017
09:08:37
в некоторых задачах делают, почему нет
да ядро это вообще пример того что стало бы в 3 раза меньше если бы было на плюсах

классический

Nikolay
10.01.2017
09:08:55
Во внутренностях линукса подобие ООП таки есть
есть, я согласен. Но это не "лучшие практики", это просто еще один подход

Vladimir
10.01.2017
09:09:11
еще хороший пример того что из-за недостаточной выразительности языка там дефайн на дефайне и дефайном погоняет

Nikolay
10.01.2017
09:09:12
да ядро это вообще пример того что стало бы в 3 раза меньше если бы было на плюсах
плюсы к ядру Линус в жизни не подпустит, и правильно делает

Vladimir
10.01.2017
09:09:32
Nikolay
10.01.2017
09:09:44
потому что тогда бы из него пришлось выкинуть шаблоны и STL и остался бы чистый си с классами

ваще это ИМХО большая ошибка
а я его поддерживаю полностью

и Гвидо поддерживаю, что он С++ не пускает в ядро питона

Nikolay
10.01.2017
09:10:37
вот хороший пример... go - довольно медленный, вы в курсе? быстрые - ява и плюсы
я в курсе, но это всегда трейдофф между скоростью разработки и скоростью работы программы

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

Google
Nikolay
10.01.2017
09:11:59
абьюзить фичи можно всегда, было бы желание.
ну, ты согласен, что в общем случае в коде, где критичен каждый байт, C++ STL непригоден, например?

N
10.01.2017
09:12:50
Критичен каждый бит в байте

Nikolay
10.01.2017
09:12:58
критичен каждый байт чего?
да чего угодно - памяти, размера скомпленного бинаря

Daniel
10.01.2017
09:12:59
ваще это ИМХО большая ошибка
я вот два года назад рылся в rtbkit. и понял, что александреску - аватар диавола. пока я целиком этот долбаный rtbkit себе в голову не засунул - я ни хера не понимал

Nikolay
10.01.2017
09:13:47
написание драйверов туда же

уровня ядра, разумеется

Vladimir
10.01.2017
09:13:59
уровня ядра, разумеется
ну в ядре у тебя и сишной стандартной библиотеки нет и плюсовой не было бы

Nikolay
10.01.2017
09:14:16
там никакого C++ не должно быть никогда, имхо

Vladimir
10.01.2017
09:14:35
там никакого C++ не должно быть никогда, имхо
Да должен, на плюсах было б компактнее при той же скорости работы

если не быстрее

Nikolay
10.01.2017
09:14:41
Какие-то куски STL брать нельзя
процентов 80 минимум

Да должен, на плюсах было б компактнее при той же скорости работы
далеко не факт, что при той же, и далеко не факт, что читабельнее

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

Vladimir
10.01.2017
09:16:18
далеко не факт, что при той же, и далеко не факт, что читабельнее
писать ужасный код можно на любом языке, на Си это не сложнее чем на плюсах

Nikolay
10.01.2017
09:17:52
писать ужасный код можно на любом языке, на Си это не сложнее чем на плюсах
сложнее. В С++ народ часто полагается на код, который за них уже написали, то есть "средние структуры, которые подходят всем". Ну да, можно умные указатели на коленке сделать. Но в остальном большая часть C++ скорее мешает при написании ясного низкоуровневого кода, чем помогает

шаблоны туда же

Google
Nikolay
10.01.2017
09:18:35
как по мне так не мешает
вот школьный пример банальный

std::cout во много раз больше подводных камней содержит, чем printf

и он по дефолту медленнее в разы

Daniel
10.01.2017
09:19:12
Vladimir
10.01.2017
09:19:19
std::cout во много раз больше подводных камней содержит, чем printf
в низкоуровневом коде ты не будешь использовать ни то, ни другое

Nikolay
10.01.2017
09:19:39
в низкоуровневом коде ты не будешь использовать ни то, ни другое
почему? там что, нет ни ввода, ни вывода? ни логов?

разумеется, буду

Vladimir
10.01.2017
09:19:51
и где ты видал разумное? едет же крыша у людей
у людей и от дефайнов в сях едет крыша, поэтому у проектов обычно жесткие стайлгайды и кодревью, чтобы отсекать тех кто не такой сумашедший как ты сам

почему? там что, нет ни ввода, ни вывода? ни логов?
Ну наверное потому что я под низкоуровневым кодом понимаю ядро и драйвера

а там у тебя нет ни STL ни stdlib сишных

Admin
ERROR: S client not available

Vladimir
10.01.2017
09:20:42
это, опять же, верно для любого языка, как ты выше написал
Поэтому в крупном проекте есть четкие стайлгайды о том что можно и что нельзя и есть кодревью.

Nikolay
10.01.2017
09:20:44
а там у тебя нет ни STL ни stdlib сишных
да, но там свои примитивы есть

Vladimir
10.01.2017
09:20:48
А значит отказываться от фич - глупо

Vladimir
10.01.2017
09:21:00
да, но там свои примитивы есть
которые будут написаны в том виде как позволит язык

Roman
10.01.2017
09:21:07
задача прекрасно разбивается на кучу мелких подзадач обычно, от решения каждого момента - удовольствие. Даже от того что понимаешь как решать
Это устройство человеческого мозга такое. Небольшая сделанная задача генерирует выброс гормонов определенных, которые повышают настроение. Это эволюция придумала чтобы человек не превращался обратно в свинью.

Nikolay
10.01.2017
09:21:23
А значит отказываться от фич - глупо
от фич никто и не отказывается, вопрос в том, что понимать под фичами. То, что есть в C++ - это не фичи, это ненужный и неявный сахар

Google
Vladimir
10.01.2017
09:22:09
да. как позволит Си :)
если писать проект на плюсах, то как позволят плюсы

Nikolay
10.01.2017
09:22:47
если писать проект на плюсах, то как позволят плюсы
ну вот комьюнити не одобряет модули ядра на C++. И правильно делает

Vladimir
10.01.2017
09:23:19
не всегда, и потом, явное всегда лучше неявного
понимание "явного" и "неявного" довольно субъективно. То что тебе неявно, мне может быть вполне очевидно

ну вот комьюнити не одобряет модули ядра на C++. И правильно делает
я не согласен с тем что правильно. Я считаю что если в ядро внести классы, шаблоны и перегрузку, это позволит сократить количество кода и уменьшить количество багов

Betrayer
10.01.2017
09:23:58
Я думал это термины такие.

Vladimir
10.01.2017
09:24:01
И увеличить читаемость

Betrayer
10.01.2017
09:24:07
С четко определенным значением.

Nikolay
10.01.2017
09:24:14
понимание "явного" и "неявного" довольно субъективно. То что тебе неявно, мне может быть вполне очевидно
разумеется, только это не работает в команде, когда у людей разный опыт и навыки. Код на C тупо значит то, что он описывает, поэтому и неоднозначного толкования меньше в разы

Betrayer
10.01.2017
09:24:36
Или вы не про типизацию?

Sergey
10.01.2017
09:25:12
>Код на C тупо значит то, что он описывает, поэтому и неоднозначного толкования меньше в разы ахаха.

Betrayer
10.01.2017
09:25:17
Ну как то глупо говорить вот это явный код.

А вот это неявный.

Какие-то аспекты языка могут быть такими.

Типа той же типизации.

Betrayer
10.01.2017
09:26:07
Да варпа лысого.

Nikolay
10.01.2017
09:26:17
Какие-то аспекты языка могут быть такими.
ну, мы сравниваем-то с С++, а не с каким-то другим языком

Betrayer
10.01.2017
09:26:23
С++ язык выше уровнем.

Страница 2016 из 4568