Бред

Ответить в тред Ответить в тред
Check this out!
Аноним 29/04/21 Чтв 08:04:37 2454790711
59f0515c722dc81[...].png 82Кб, 2000x2000
2000x2000
Evm6qtXAAIMpS.jpg 22Кб, 761x383
761x383
Тупых вопросов программистам тред

Надеюсь, уже не спите, бандиты? У меня накопилось несколько вопросов, и гугл не помог. Надеюсь, добрые аноны ответят на них, желательно без сильного битья хуями по лбу. Итак.

-Что такое фреймворки? Только простыми словами. Прочитал определение из википедии, нихуя не понял. Это что-то типа программы, в которой делают другие программы? Или как? Нихуя не понятно.
-Зачем нужны абстрактные классы? Вообще нихуя не понял, зачем они нужны. "У абстрактного класса нет экземпляров". Ну ок, и что из этого следует? Нахуя он нужен? Пишут, что реализует принцип полиморфизма, но мне это не о чём не говорит.
-Смежный вопрос - что такое полиморфизм простыми словами? С наследованием и инкапсуляцией быстро разобрался, а эту вот залупу до сих пор не понимаю. Да, пробовал читать в интернете. Нихуя не понял.
-Правильно ли я понял, что к классу можно обращаться только через его объект? Типа, если я хочу передать в этот класс какие-то параметры (чтобы он в своём методе что-нибудь с ними сделал), то нужно создать его экземпляр? Или есть ещё какие-то способы?
-Чем интерпретатор отличается от компилятора? Вчера препод задал такой вопрос, никто не смог ему внятно ответить. Как я понял, компилятор переводит сразу весь код в байт-код, и там уже начинает его осуществлять, а интерпретатор делает это построчно (т.е. читает строку и сразу переводит). Препод сказал, что нихуя не правильно. Так как правильно то?
Аноним 29/04/21 Чтв 08:07:01 2454791752
Бамп
Аноним 29/04/21 Чтв 08:10:28 2454792873
Бамп
Аноним 29/04/21 Чтв 08:13:43 2454793984
Бамп
Аноним 29/04/21 Чтв 08:18:29 2454795805
>>245479071 (OP)
>Что такое фреймворки?
Ето типа набор утилит и библиотек. Ну типа репак от васяна со всяким говном и нескучными обоями.

>абстрактные классы
Нахуй не нужны, чистой воды суходрочка.

>полиморфизм
Ну тип можешь разные алгоритмы для обработки разных данных внутри одного метода реализовать епта

>классу можно обраща
Бросай ты это ооп ебучее, оно из тебя гомика сделает.

>интерпретатор отличается от компилятора
Канпелятор генерирует исполняемый фаел, а интерпритатар сам исполняет ну или сам передает команды виртуальной машине на исполнение
Аноним 29/04/21 Чтв 08:18:31 2454795836
Аноним 29/04/21 Чтв 08:19:34 2454796297
Аноним 29/04/21 Чтв 08:20:12 2454796578
>>245479071 (OP)
1. Набор либ, чтоб ты не выдумывал свои велосипеды, когда проект делаешь, а делал всё +/- по стандарту этого фреймворка.
2. Чтоб от них наследовать другие классы и вынести туда общие свойства/методы. А вообще наследование не нужно в 2к21 - от него лишь больше гемора. А если смотреть глубже и холиварнее - ФП > ООП. Особенно на JS. Только сильно упарываться не надо, код должен оставаться читабельным
3. Методы с одним названием, но с абсолютно разной реализацией и параметрами (опционально) у наследуемых классов.
4 .
>передать в класс какие-то параметры
Попробуй не смешивать в голове понятия экземпляр и класс. И погугли о статических методах/полях
5. Он ебанутый либо ты чего-то не так сказал. Нюансы разве что в том, что интерпретатору не надо в байт код. В промежуточный конвертнул , немного оптимизировал даже, если умеет и давай строку запускать. И да, компилятор не обязательно в байт код, а в любой другой язык.
Аноним 29/04/21 Чтв 08:20:26 2454796739
Аноним 29/04/21 Чтв 08:22:39 24547975110
>>245479071 (OP)
да забей ёпта. просто делай сайтики на Реакте
Аноним 29/04/21 Чтв 08:23:41 24547979011
>>245479657
>Методы с одним названием, но с абсолютно разной реализацией и параметрами
А разве это не приводит к путанице?

И да, тоже спасибо за ответ.
Аноним 29/04/21 Чтв 08:23:58 24547980612
>>245479071 (OP)
Какой дистрибутив линукса устанавливать, чтобы было несложно и при этом хайпого и модно?
Аноним 29/04/21 Чтв 08:24:10 24547981513
Нахуй мне это все? Я пишу на жс и ооп- ебаниной не страдаю
Аноним 29/04/21 Чтв 08:24:42 24547983014
>>245479071 (OP)
Лень отвечать на вопросы, которые легко гуглятся, но немного поправлю это:
> -Чем интерпретатор отличается от компилятора? Вчера препод задал такой вопрос, никто не смог ему внятно ответить. Как я понял, компилятор переводит сразу весь код в байт-код, и там уже начинает его осуществлять, а интерпретатор делает это построчно (т.е. читает строку и сразу переводит). Препод сказал, что нихуя не правильно. Так как правильно то?
Компилятор делает из исходников объектные файлы, а далее уже линковщик их собирает в работоспособную программу. То что ты сказал про интерпритаторы верно. То что ты сказал преподу про компиляторы, на самом деле являются jit-компиляторами, а это немного другое.
Аноним 29/04/21 Чтв 08:25:10 24547985115
>>245479071 (OP)
1) Фреймворк - библиотека. Набор программных вызовов, которые будут использоваться для выполнения какой-то задачи. Дабы не писать тонну однотипных кодов везде, используют уже готовые.
2) Особо сложная абстракция на практике мало используется. Только как часть сложного концепта в особо сложном продукте, как тот же фреймворк.
3) Полиморфизм - возможность использовать разные объекты которые реализуют один и тот же интерфейс (контракт). Полезно, для более "общего вида" кода. Например у тебя 2 разных БД скажем, Mongo и MySQL. Логика обращения к базе разная, а ты хочешь получать данные из одного метода.
4) Есть "статичные методы", которые будут едины для всех объектов.
5)уже ответили выше
Аноним 29/04/21 Чтв 08:25:18 24547985816
>>245479806
>хайпого
Линукс не хайпово, причем уже давно, это признак говноеда не разбирающегося в банальной безопастности
Аноним 29/04/21 Чтв 08:26:46 24547991917
>>245479851
а на первые 4 выше не ответили?
Аноним 29/04/21 Чтв 08:26:49 24547992118
>>245479580
> Ето типа набор утилит и библиотек. Ну типа репак от васяна со всяким говном и нескучными обоями.
> Нахуй не нужны, чистой воды суходрочка.
> Ну тип можешь разные алгоритмы для обработки разных данных внутри одного метода реализовать епта
> Бросай ты это ооп ебучее, оно из тебя гомика сделает.
> Канпелятор генерирует исполняемый фаел, а интерпритатар сам исполняет ну или сам передает команды виртуальной машине на исполнение
Мы вам перезвоним. Ни одного верного ответа, лол. Разве что половина от последнего верно отвечена.
Аноним 29/04/21 Чтв 08:27:14 24547994719
>>245479071 (OP)
>Что такое фреймворки? Только простыми словами. Прочитал определение из википедии, нихуя не понял. Это что-то типа программы, в которой делают другие программы? Или как? Нихуя не понятно.
есть язык программирования - набор правил и комманд, которые передаются в компилятор, чтобы сделать исполняемый файл. есть библиотека (либа), в которой умные люди уже задолго до тебя сделали набор функций и классов, которые очень часто требуются всем погромистам. фреймворк - это набор библиотек, написанных в определённом стиле, часто являющиеся надстройкой над языком программирования со своими особенностями, например Boost и Qt над C++.
Аноним 29/04/21 Чтв 08:28:00 24547998420
Аноним 29/04/21 Чтв 08:29:06 24548004521
одни нубы в трэде. никто не шарит, печально
Аноним 29/04/21 Чтв 08:29:19 24548005422
>>245479984
Кстате, насчет последнего. Ты там не на половину прав, а всего на четверть.
Аноним 29/04/21 Чтв 08:29:20 24548005523
>>245479858
Найс вантузятник разорвался, иди КВ001471284 на жепу накати, а то дыра разрастается
Аноним 29/04/21 Чтв 08:30:10 24548009024
>>245479071 (OP)
Околопогромист вкатывается в тред. Ну смари.

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

Полиформизм это идея о том, что если ты говоришь компьютеру "сделай Хм У", то не должен думать о том, что для разных У Х делается по-разному. Например, есть у тебя функция съесть(еда). Чтобы съесть банан, надо его помыть и почистить, чтобы съесть мясо его надо обработать температурой, Сникерс надо просто съесть. Но если тебе приходится об этом думать, то программист, писавший эту функцию, накосячил. Смысл как раз в разделении труда: если уж какой-то Вася написал какую-то функцию, делающую какое-то действие, он должен избавить тех кто ее использует от мыслей о том, как именно она работает. Без этого принципа каждому кто использует функцию Васи приходилось бы повторять половину Васиной работы.

Абстрактные классы нужны для технической реализации полиморфизма. Например, Васе может быть проще написать две отдельных функции: съестьСникерс() и съестьБанан(), между которыми не будет абсолютно ничего общего. Тогда для того чтобы ты все-таки видел одну функцию, он напишет абстрактную функцию съесть(), и реализует ее двумя "настоящими" функциями съестьБанан и съестьСникерс. Тогда ты будешь всегда вызывать функцию съесть, технически при этом будет вызываться одна из "настоящих" функций, но тебе будет пофиг.

Ну в последние два реально гуглятся.
Аноним 29/04/21 Чтв 08:30:36 24548010925
>>245480054
Ты еще попукать в лужу решил, первого раза тебе мало показалось?
Аноним 29/04/21 Чтв 08:31:54 24548017726
>>245480055
Как сидится на бутылке из системд? Дай угадаю сейчас ты висрешь ряяяя у миня арч, а на другом гентууууу
Аноним 29/04/21 Чтв 08:32:41 24548020227
>>245480177
Шизоид, так ты пояснишь за проблемы безопасности в системд? И причем тут линукс?
Аноним 29/04/21 Чтв 08:32:52 24548021328
>>245479790
Наоборот в теории. Есть у тебя фап рулетка (на 100 вариантов), вайфу рулетка(10 вариантов и зависит от 4 цифры id предыдущего сообщения) и аниме рулетка(на 10 вариантов с даблами и триплами). Эти рулетки реализуют интерфейс rollable, а точнее его метод roll. У всех разная реализация, а у вайфу будет отличаться количество параметров. Но ты уверен, что если этот класс реализует Rollable, то ты можешь роллять с помощью roll(id).

29/04/21 Чтв 08:34:11 24548025929
>>245480202
>линукс
Сорян не знал что системд это тема виндоуса. Спасибо анон буду знать
Аноним 29/04/21 Чтв 08:34:44 24548028830
>>245480177
Даунич, не читай высеры от ноунеймов с быдлохабра, а то еще сильнее отупеешь.
Аноним 29/04/21 Чтв 08:35:04 24548030531
>>245479851
>>245479947
>>245480090
Благодарю, аноны. В целом, я более-менее понял ответы на свои вопросы. Всем добра.
Аноним 29/04/21 Чтв 08:35:09 24548030832
>>245480202
я просто хацкир у мамы за бизапаснасть баюсь, а то пак прона с нигами сопрут
Аноним 29/04/21 Чтв 08:35:50 24548034233
>>245480288
>быдлохабра,
Ок буду слушать ебача с двача. Лол
Аноним 29/04/21 Чтв 08:38:03 24548044334
>>245479071 (OP)
Берешь и кодишь.
Препод блядь, как же отсала система образования, препод спросил что такое интерпретатор.
Блядь открой питон, открой любой компилируемый язык и покажи эту разницу на практике.
Не бля, будут дуить каким нибудь лекциями бедных студентов, препод скахал блядь.
Хочешь научиться разрабатывать - бери и разрабатывай. Курсы не советую - это для быдла. Читай книги на тематику и изучай методом научный тык + гугл. Можно посмотреть ченить на ютабе но это такое.
Аноним 29/04/21 Чтв 08:38:29 24548046335
>>245480259
Не маняврируй. Ты вчера так и не пояснил за проблему безопасности системд. Сам системд и линукс - 2 совершенно разные темы. Если системд обосрется, то это точно не по вине линукса. Также, можно выбрать дистрибутив GNU/Linux'а без системд.
>>245480308
А системд тут причем?
Аноним 29/04/21 Чтв 08:38:45 24548047636
>>245479858
А что для "безопастности" подходит?
Фрибсд что-ли?
Аноним 29/04/21 Чтв 08:39:25 24548050837
>>245480443
Как ты на практике покажешь разницу компилятора и интерпритатора?
Аноним 29/04/21 Чтв 08:40:48 24548056738
>>245480463
>можно выбрать дистрибутив GNU/Linux'а без системд.
Но их нет. Генту в прод сунет только полный идиот, как и красноглазые форки форков дебиана с sysv.
Аноним 29/04/21 Чтв 08:41:15 24548059139
>>245480508
Пишешь пайтон скрипт, сохраняешь файл, пишешь python hello_world.py, оно работает.
Делаешь также с с++ или явой - оно не работает, надо сначала компилировать.
Все. Просто и понятно.
Также и со всеми остальными темами.
Одна из основных черт дебильной системы образования - склонность к переусложнению простых вещей.
Аноним 29/04/21 Чтв 08:41:37 24548060540
>>245479830
Ага, то есть ответил на вопрос, который гуглится быстрее всех остальных
Аноним 29/04/21 Чтв 08:41:45 24548061241
image.png 219Кб, 498x478
498x478
Аноним 29/04/21 Чтв 08:43:05 24548066942
Ты.jpg 28Кб, 474x472
474x472
>>245480443
>Можно посмотреть ченить
>но это такое
Аноним 29/04/21 Чтв 08:44:09 24548070643
>>245480669
>пук
Сходи препода послушай и курсы на гикбрейнс оплати, дубинка.
Аноним 29/04/21 Чтв 08:44:53 24548073244
>>245480706
Зачем, я же не инцел, как ты
Аноним 29/04/21 Чтв 08:45:20 24548075145
>>245480567
Ты так и продолжишь жопой вилять? В чем проблема безопасности системд?
>>245480591
Это нихуя не покажет различия. Они отличаются больше, чем способом запуска результата. Сам компилятор кстате не дает бинарник в результате. Его вывод нужно еще слинковать.
>>245480605
Оп запутался во всей этой хуйне, поэтому я и пояснил. Все остальное гуглится.
Аноним 29/04/21 Чтв 08:47:45 24548085646
>>245480751
>Это нихуя не покажет различия. Они отличаются больше, чем способом запуска результата. Сам компилятор кстате не дает бинарник в результате. Его вывод нужно еще слинковать.
На практике мой подход даст больше знания, чем унылый зубреж беспредметный. Те, кто столкнется с этим, выучат различия на парктике.
А по факту имеющая манера обучения приводит к тому, что половина группы не поймет вообще ничего, а вторая половина зазубрит к ЭкЗаМеНу. А не реальную работу пойдет только тот, кто копал тему сам вне занятий, а не смотрел в рот ебаным преподам, отрабатывающим свобю зарплату.
Аноним 29/04/21 Чтв 08:48:23 24548089547
Аноним 29/04/21 Чтв 08:48:44 24548091148
16194785147510s.jpg 6Кб, 170x170
170x170
>>245480856
>На практике мой подход даст больше знания, чем унылый зубреж беспредметный. Те, кто столкнется с этим, выучат различия на парктике.
А по факту имеющая манера обучения приводит к тому, что половина группы не поймет вообще ничего, а вторая половина зазубрит к ЭкЗаМеНу. А не реальную работу пойдет только тот, кто копал тему сам вне занятий, а не смотрел в рот ебаным преподам, отрабатывающим свобю зарплату.
Аноним 29/04/21 Чтв 08:49:18 24548092949
16194785147510s.jpg 6Кб, 170x170
170x170
Аноним 29/04/21 Чтв 08:49:51 24548095850
>>245480911
>мам я не зря портираю штаны в вузике
Передаю привет из твоей любимой айти индустрии, чушка.
Аноним 29/04/21 Чтв 08:50:39 24548099251
Школьник аутишник подорвался от правды, какие же макаки мерзкие. Худшая сторона профессии - коллеги.
Аноним 29/04/21 Чтв 08:50:44 24548099752
>>245480706
>гикбрейнс
Лох самосдетектился, найс
Аноним 29/04/21 Чтв 08:50:48 24548099853
>>245480958
Я не имею отношения к вам ИТпетухам, сорямба
Аноним 29/04/21 Чтв 08:51:10 24548101154
16195373498900.jpg 41Кб, 476x476
476x476
Раз уж тут тред тупых вопросов, то вкочусь. А правда, что супер продвинутые программисты могут переключать зрение на такое, как у Нео? Ну т.е. видеть, как существует мир на низком уровне, предсказывать, действовать, как команда ИИ в доте против геймеров, используя весь потенциал в рамках правил игры.
Аноним 29/04/21 Чтв 08:51:47 24548104155
>>245480856
> На практике мой подход даст больше знания, чем унылый зубреж беспредметный.
А потом такие маньки нихуя не будут понимать че к чему.
> Те, кто столкнется с этим, выучат различия на парктике.
А нахуй тогда такое образование надо?
> А не реальную работу пойдет только тот, кто копал тему сам вне занятий, а не смотрел в рот ебаным преподам, отрабатывающим свобю зарплату.
Ну тут согласен.
Аноним 29/04/21 Чтв 08:51:47 24548104356
>>245480998
А в тред ты просто так зашел, я понял.
>>245480997
Пост, достйоный макаки.
Аноним 29/04/21 Чтв 08:52:09 24548106057
16194785147510s.jpg 6Кб, 170x170
170x170
>>245481011
>Раз уж тут тред тупых вопросов, то вкочусь. А правда, что супер продвинутые программисты могут переключать зрение на такое, как у Нео? Ну т.е. видеть, как существует мир на низком уровне, предсказывать, действовать, как команда ИИ в доте против геймеров, используя весь потенциал в рамках правил игры.
Аноним 29/04/21 Чтв 08:53:05 24548109658
>>245481043
>платит за инфу, которая доступна бесплатно
>называет кого-то макакой

Чел, ты...
Аноним 29/04/21 Чтв 08:53:15 24548110459
>>245481043
Я зашел в тред перед школой картинки с гринтекстом и свиньями кидать.
Аноним 29/04/21 Чтв 08:53:39 24548111960
>>245481041
Надо будет - разебрутся.
>А нахуй тогда такое образование надо?
Бинго. Оно не нужно.
Синтаксис, книги по паттернам и алгоритмам, книги по предметной зоне и нужным фреймворкам - вуаля, ты программист лучше, чем 99 процентов выпускников российских говновузов.
Аноним 29/04/21 Чтв 08:54:31 24548115561
>>245481096
Так я никогда не платил за это, долбоеб. Я как раз написал, что курсы не нужны. Но ты в глаза ебешься, макака.
Аноним 29/04/21 Чтв 08:54:38 24548116062
16194785147510s.jpg 6Кб, 170x170
170x170
>>245481119
>Синтаксис, книги по паттернам и алгоритмам, книги по предметной зоне и нужным фреймворкам - вуаля, ты программист лучше, чем 99 процентов выпускников российских говновузов.
Аноним 29/04/21 Чтв 08:54:48 24548117363
>>245481096
> чел ты
Сразу видно зумеро-имбецила, который не осилил смысл поста

мимо
Аноним 29/04/21 Чтв 08:54:59 24548117664
Я бы тоже задал вопросов. Лично я ничего не понял из ваших обьяснений, один хуй термины и метафоры такие, что мне нихуя непонятно.
Аноним 29/04/21 Чтв 08:55:33 24548120165
Аноним 29/04/21 Чтв 08:55:37 24548120366
16194785147510s.jpg 6Кб, 170x170
170x170
>>245481176
>Я бы тоже задал вопросов. Лично я ничего не понял из ваших обьяснений, один хуй термины и метафоры такие, что мне нихуя непонятно.
Аноним 29/04/21 Чтв 08:56:11 24548122167
>>245481201
Пруфай свой кринж на трусах с супом желательно
Аноним 29/04/21 Чтв 08:56:49 24548125468
Ты.jpg 28Кб, 474x472
474x472
>>245481221
>Пруфай свой кринж на трусах с супом желательно
Аноним 29/04/21 Чтв 08:57:48 24548129669
1619675867606.png 152Кб, 345x350
345x350
Аноним 29/04/21 Чтв 08:58:22 24548131470
>>245481221
Пруфанул тебе за щеку, проверяй
Аноним 29/04/21 Чтв 08:58:25 24548131771
Ебать у меня диплом о высшем образовании (программирование и прикладная математика). Не спорьте со мной нахуй тупое быдло
Аноним 29/04/21 Чтв 08:59:49 24548137672
Аноним 29/04/21 Чтв 09:02:37 24548148573
>>245479071 (OP)
>-Что такое фреймворки?
Часто это просто библиотека, в которой реализованы какие то фишки, которые можно юзать в своём коде, что бы не городить велосипеды. Но в отличие от библиотеки, может ещё добавлять какую то функциональность, которую нельзя добавить средствами самого языка.
>-Зачем нужны абстрактные классы?
Абстрактный класс нужен если ты написал какой то промежуточный класс, экземпляры которого не нужны, но его функциональность нужна в потомках. Например ты написал абстрактный класс солдат в стратежке, который имеет хп, может бегать и может умирать, но по факту такого базового юнита тебе не надо. А потом наследовал от него два класса автоматчик и хилер, один ещё может стрелять а второй хилить. Что б не переписывать базовую механику для автоматчика и хилера - её выносят в родитель.
>Смежный вопрос - что такое полиморфизм простыми словами?
Вот как в примере выше. Полиморфизм - это способность наследования беганья и умирания у солдата и хилера от солдата.
>Правильно ли я понял, что к классу можно обращаться только через его объект?
В целом к нему можно обращаться через статические методы и поля.
>-Чем интерпретатор отличается от компилятора?
Компилятор преобразовывает код в машинный код для конкретного процессора (х86 или арм)
Интерпретатор преобразовывает код в процессоронезависимый байт код, который уже в процессе выполнения преобразовывается в машинный код на лету.
Аноним 29/04/21 Чтв 09:07:10 24548167474
>>245479657
>>245479580
>>245479071 (OP)
Про фреймворк чуток сложнее все. Фреймворк от библиотеки в основном отличается тем, что он предоставляет некоторую точку расширения функционала. То есть во фреймворке реализуется "push"-модель. А в либках обычно "pull" модель
29/04/21 Чтв 09:08:18 24548172875
ебать дауны необучаемые
Аноним 29/04/21 Чтв 09:11:49 24548189276
>>245479071 (OP)
Наверняка уже ответили, но я тоже поясню своими словами.
>Что такое фреймворки
Это некая "заготовка" или "полуфабрикат" на твоём языке программирования для какого-то типа программ. например, для вебсервера. Уже почти всё сделано, причем на высоком уровне сделано (с учетом безопасности, производительности и прочей хуйни) осталось лишь сделать тонкую настройку под твой проект.
>Зачем нужны абстрактные классы?
Чтобы кода меньше писать и поддерживать. Например, у тебя пять таблиц в базе, которые отличаются одним полем, а остальные 100 полей одинаковые. Тебе нужно настроить интерфейс доступа к базе для каждой таблицы. Ты можешь написать пять классов и в каждом описать всё 101 поле, а можешь написать один абстрактный класс на 100 полей и 5 классов, наследующихся от абстрактного, и с 1 дополнительным полем каждый. Так намного проще всё читается, легче понять че происходит и легче вносить изменения. Аналогично, с методами, когда есть 10 одинаковых для всех классов методов и 1 отличающийся. Лучше, когда одинаковые не повторяются, а хранятся в одном месте.
>полиморфизм простыми словами
Когда вызываешь один и тот же метод у разных классов, а выполняется он по разному, потому что у всех он немного по-другому реализован
>к классу можно обращаться только через его объект?
Класс - это тоже объект типа "класс", можно обратиться и к классу напрямую, без объекта, вызвав классовый метод, например
>Чем интерпретатор отличается от компилятора
Интерпретатору не нужна компиляция, можно сразу файлы запускать и они тут же выполнятся. Компилятор же должен сначала скомпилить весь твой код в отдельный файл и его уже надо запускать.
На самом деле, интерпретатор не так прост, что тупо построчно выполняет. На самом деле, он создает "ускоренные" версии файлов на лету, а если какой-то файл выполняется часто и много, есть фишка, которая делает сорт оф компиляцию, создавая ещё более ускоренные версии файлов.
Аноним 29/04/21 Чтв 09:33:45 24548273377
>>245479071 (OP)
Я лично не понимаю чем на фронтенде отличается либа от фреймворка. В других языках просто сразу видно где фреймворк, где либа.
Фреймворк - КАРКАС, почему реакт не фреймворк?
Аноним 29/04/21 Чтв 09:43:44 24548315978
Учи html+css
Аноним 29/04/21 Чтв 10:21:35 24548492279
>>245481011
Да. Но если отталкиваться от твоего представления, то они на программистов не похожи. Это пограничные люди, у которых точно нет должности тимлидов и архитекторов в корпорациях. В лучшем случае - это чудак, прогрессивный дед на своей волне.
Аноним 29/04/21 Чтв 10:38:16 24548578480
>>245479830
>Компилятор делает из исходников объектные файлы, а далее уже линковщик их собирает в работоспособную программу.
Окей, допустим это верно
>То что ты сказал про интерпритаторы верно.
>То что ты сказал преподу про компиляторы, на самом деле являются jit-компиляторами, а это немного другое.
Что ты несешь блять?

Интерпретаторы НИХУЯ НИЧЕГО НЕ КОМПИЛИРУЮТ, интерпретатор просто читает код (возможно его промежуточное представление после перевода в байткод, см. java), определяет функции, параметры, и грубо говоря свитчкейсом хуячит вызывать ту функцию или интринсик, которую надо, с переданными параметрами. Компиляции никакой нет, компиляция только для самого интерпретатора, и вообще говоря голый интерпретатор, без какой-либо поддержки JITа или вызова скомпилированных библиотек, можно и без ассемблера написать работать это нихуя не быстро будет, конечно же, но зато платформонезависимость хуемое

А JIT нихуя не обязан компилить ВЕСЬ код, как правило компилятся только отдельные функции, то есть тут как раз можно условно счтитать "компилируется по мере поступления кода". Не совсем, так как компилируется сразу ВСЯ функция, применяются оптимайзеры-циклоанолайзеры-прочее, но если у тебя в коде написано "zalupa.huj(pizda);", то JIT компиляция пойдет при вызове данной строки, а не задолго до нее
Аноним 29/04/21 Чтв 11:00:43 24548698481
>>245479830
А что такое jit компиляторы?
Аноним 29/04/21 Чтв 11:04:52 24548719782
бамп
Аноним 29/04/21 Чтв 11:06:02 24548726483
Я правильно понимаю, что в c++ есть параметрический полиморфизм и он реализован через вируальные методы, а есть ad-hoc реализованный обычной перегрузкой?
Аноним 29/04/21 Чтв 11:09:48 24548746684
бамп
Аноним 29/04/21 Чтв 11:10:02 24548747885
>>245479071 (OP)
>-Что такое фреймворки?
Чужой код, который ты используешь
>-Зачем нужны абстрактные классы?
Ваще не ебу
>-Смежный вопрос - что такое полиморфизм простыми словами?
Ну типа... забыл чот
>-Правильно ли я понял, что к классу можно обращаться только через его объект? Типа, если я хочу передать в этот класс какие-то параметры (чтобы он в своём методе что-нибудь с ними сделал), то нужно создать его экземпляр? Или есть ещё какие-то способы?
А нахуя?
>-Чем интерпретатор отличается от компилятора?
Компилятор перевод в машинный код, а интерпретатор сразу хуярит. Наверно

аналитик 200к на удаленочке
Аноним 29/04/21 Чтв 11:11:06 24548754586
> Фреймфорк - библиотека
framework - сходите в гугл транслейт хотя бы, бля дебилы...
Это прежде всего набор практик и архитектурных паттернов, фреймворк предполагает работу в рамках всех этих практик и паттернов. А то что вы описываете, суть библиотека чего-нибудь, что в корне не верно по отношению к понятию фреймфорка. Agile/SCRUM тоже фреймворк например, а оно вообще не про написание кода.

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

В разных языках по разному, но обращение напрямую к свойствам класса возможно, обычно это нужно явно указать как статичный метод/свойство. Единственное, о чем надо помнить - в статичном методе нет this, т.е. нет инстанса. Тема использования всего этого добра холивар тот еще. Нормально использовать например статичные свойства как некие константные значения в скоупе конкретного класса. Стат методы могут быть например использованы для реализации синглтон патерна. Короче, не надо из везде пихать, надо думать башкой.

Компилятор генерит готовый машиный код, интерпритатор делает это на лету. Еще есть разница в обработке ошибок. Компиляция занимает время, но скомпилированная программа работает быстрее.
Аноним 29/04/21 Чтв 11:18:00 24548791587
>>245485784
> Интерпретаторы НИХУЯ НИЧЕГО НЕ КОМПИЛИРУЮТ
Правильно, они транслируют исходный код в машинный. В чем ошибка у опа?
> интерпретатор просто читает код (возможно его промежуточное представление после перевода в байткод, см. java)
Java является jit-компилируемой. Внутри jvm происходит не интерпритация, а трансляция байт-кода в машинный.
> Компиляции никакой нет, компиляция только для самого интерпретатора
Мань, исходники комплириуются в байт-код, который уже исполняет сам jvm(в случае с жабой), со всеми оптимизациями и прочими прелестями компиляции. Далее, байт-код транслируется в машинный.
> и вообще говоря голый интерпретатор, без какой-либо поддержки JITа
Интерпритатор не может поддерживать jit, такого просто не существует, лол.
> А JIT нихуя не обязан компилить ВЕСЬ код
Обычный компилятор тоже не обязан компилировать весь код, интерпритатор не обязан интерпритировать весь код... Но как правило, компилируется ВЕСЬ код. Это правило не работает разве что в каких-то васянских jit'ах и хранятся они далеко в глубинах гитхаба. Я, например, про таких даже не слышал.
> как правило компилятся только отдельные функции
И как это должно работать?
> "компилируется по мере поступления кода"
Сам то понял что сказал? Сейчас бы что-то компилировать на пользовательской машине...
> но если у тебя в коде написано "zalupa.huj(pizda);", то JIT компиляция пойдет при вызове данной строки, а не задолго до нее
Мань, от того, что компиляция называется jit, сути самой компиляции не меняет. Только вместо объектных файлов, ты получишь байткод.
Аноним 29/04/21 Чтв 11:28:56 24548851188
>>245479071 (OP)
Нахуй вы везде вставляете "типа", зумерье ебаное? Без него твое предложение потеряло бы смысл? Если ты так же будет засирать код, то лучше сразу иди на завод.
Аноним 29/04/21 Чтв 11:34:07 24548882889
>Java является jit-компилируемой. Внутри jvm происходит не интерпритация, а трансляция байт-кода в машинный.
В jvm и интерпретация, и компиляция, здрасьте
>Мань, исходники комплириуются в байт-код, который уже исполняет сам jvm(в случае с жабой), со всеми оптимизациями и прочими прелестями компиляции. Далее, байт-код транслируется в машинный.
Байткод - это не компиляция, это промежуточное представление, ты блять можешь СРАЗУ писать на байткоде и это будет выполняться спокойно, как бы максимально неоптимально твой байткод не был бы. И держу в курсе, данные представления спокойно между друг другом переводятся, lookup class to dex
>Интерпритатор не может поддерживать jit, такого просто не существует, лол.
Скажи это HotSpotу, ARTу, скажи это V8
>Обычный компилятор тоже не обязан компилировать весь код, интерпритатор не обязан интерпритировать весь код... Но как правило, компилируется ВЕСЬ код. Это правило не работает разве что в каких-то васянских jit'ах и хранятся они далеко в глубинах гитхаба. Я, например, про таких даже не слышал.
Опять таки, скажи это HotSpotу, ARTу, скажи это V8, ВСЕ блять компилят функции при достижении хот лимита, знаешь почему? Потому что блять компиляция - вещь дорогая, если ты блять 10 строчек вызываешь раз за весь рантайм, тебе нахуй не сдалось это компилировать в машинный, проще запустить интерпретатор. Осключение - AOT, но это отдельная песня, не везде поддерживается
>И как это должно работать?
Держишь хотнесс каунтер на функцию, видишь, что часто вызывается - отправляешь на компиляцию. там компилируется и инлайнится только то, что можно (то есть интринсики, луп анроллинг и прочие прелести), вызовы ДРУГИХ функций оформляются как ВЫЗОВ функций (иногда еще есть инлайнинг, но это сложная песня)
Аноним 29/04/21 Чтв 12:19:01 24549131090
>>245482733
Потому что реакт сам по себе не решает никакой задачи, он просто дергает возвращающие жсх функции. Если ты к нему добавишь еще несколько хуевин, и сам напишешь для каждого компонента логику обновления - тогда у тебя получится фреймворк имени самого себя.
Аноним 29/04/21 Чтв 12:25:27 24549168191
Screenshot2021-[...].jpg 76Кб, 720x383
720x383
>>245488828
> В jvm и интерпретация, и компиляция, здрасьте
В jvm происходит трансляция байткода в машинный.
> Байткод - это не компиляция
Да, это не компиляция, это результат компиляции.
> это промежуточное представление
Ок, а объектные файлы при компиляции это уже готовый результат?
> ты блять можешь СРАЗУ писать на байткоде и это будет выполняться спокойно, как бы максимально неоптимально твой байткод не был бы.
Ты также можешь и объектные файлы писать и они слинкуются.
> Скажи это HotSpotу, ARTу, скажи это V8
2 первых говна не гунлится, V8 на пике.
> Опять таки, скажи это HotSpotу, ARTу, скажи это V8, ВСЕ блять компилят функции при достижении хот лимита, знаешь почему?
Все это кто? Хоть один пруф давай. Нахуя что-то компилировать на машине пользователя?
> Потому что блять компиляция - вещь дорогая, если ты блять 10 строчек вызываешь раз за весь рантайм, тебе нахуй не сдалось это компилировать в машинный, проще запустить интерпретатор.
Эти 10 строчек выполнятся везде за доли микросекунд, какая разница че с ними делать? К слову, в нормальных иде, компилируются только измененые файлы.
> Держишь хотнесс каунтер на функцию, видишь, что часто вызывается - отправляешь на компиляцию.
Нахуя? Объясни смысл компиляции на пользовательской машине. Это лишние подвисания и прочее говно. Мб ты путаешь с inline функциями, которые могут компилироваться либо как функция, либо встратваться в код? Там как раз нечто похожее и происходит.
Настройки X
Ответить в тред X
15000
Макс объем: 20Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
X
Ваш шидевор X
Стикеры X
Избранное / Топ тредов