Я не понимаю ООП, анон.То есть, в теории вроде ясно. Но вот когда начинаются все эти конструкторы, thisы - я впадаю в ступор. Нахуя вот нужен пустой конструктор?Сможешь объяснить человеческим языком?
>>164125580 (OP)>Сможешь объяснить человеческим языком?Нет. Вон из професси.
>>164125940Двачую.
Таааакая же хуйня.
>>164125580 (OP)>Нахуя вот нужен пустой конструктор?Чтобы был. Иначе как ты будешь создавать объект?
>>164125580 (OP)Все уже перекатились на лабвью.
>>164125580 (OP)Умные дяди вроде уже пояснили что ООП для петухов, форсед мем от эффективных менеджеров. Структы и методы, больше тебе нихуя не надо, ебашь код на си.
>>164127431Фух, ну ладно.
>>164127431>ебашь код на си
Раз уш такой тред. Не могу понять такой тонкости. Допустим у нас есть два объекта: двачер и шкаф. Мы должны создать метод у двачера по открытию шкафа и передать ему собственно шкаф. Или всё наоборот?
я понял ооп, когда написал тетрис с интерфейсом.если с функциональным и поэтапно-процедурным подходом, мой код был похож на вонючее рыбное тянское говно, которое было непонятно всем даже мне.. то когда я стал писать тетрис в ооп-стиле, все стало ясно и понятно.. просто быстро. очевидно. быстро вспоминается..например обьект клетка. у нее есть свойство картинка которая отображается на этой клетке.
>>164125580 (OP)Чтоб ты его наполнил своим участием в процессе сборки. Я думаю так.Хотя он так и останется пустым...
>>164125580 (OP)Только что кино посмотрел из которого скрин на оппике.
>>164127644>НИПАНЯТНА(Может проблема в тебе?
>>164127607>Мы должныКак удобнее, так и делай.
>>164127644> вонючее рыбное тянское говноeto kak?
>>164125580 (OP)Попробуй ФП, лол, вдруг взлетит. А по существу, это довольно комплексные концепции. Лучше всего читнуть теорию по теме и просто начать что-то делать, постепенно понимание придёт. Сам так же ебался сначала с конструкторами, потом с интерфейсами, потом с лямбдами, потом с монадами, потом со стримами. А сколько ещё впереди. Жаль я вкатился очень поздно.
>>164128446>Лучше всего читнуть теорию по теме и просто начать что-то делать, постепенно понимание придёт.Двачаю вот это.
>>164125580 (OP)ОП, ты просто даун. Выкатывайся из программирования и никогда не возвращайся в эту область.
>>164128650Петуха забыли спросить.
>>164127644Ага, просто и понятно, и производительность - говно ебаное. Правильные поцоны используют ецс. По той же причине они используют обычный массив вместо линкед лист и прочей хуиты. Чем проще технология тем быстрее работает.
>>164128729>пук
>>164128846>производительность - говно ебаное
>>164127558Сейчас бы в 2к17 жрать полтора часа пока твой проект конпнлируется в крестах три часа в расте
>>164128888Начнёшь есть проекты посложнее тетриса - увидишь.
>>164128956Чем тебе объект производительность портит?
В таких тредах всегда бывают читатели хабра, которые легко пояснят тебе за производительность, за правильность, да и ваще пояснятМимо, 16 лет опыта
>>164128904Мань, давно есть другие языки кроме си и си++. Даже те, которые вообще не надо компилировать. Да, они чуть медленнее, но для кнопучков в интерфейсе это похуй.
>>164129105Традиции двачей.
>>164128446Да. ещё забыл добавить на тему "читнуть теории" - вполне верятно, что читнув теорию ты нихуя не поймёшь. Как, например, описание того, что ткаое интерфейс. Охулион статей на эту тему, но все они сводятся к одному и тому же. Но сделано это не от того, что никто не может объяснить на пальцах, а от того, что это уже и так на пальцах и как-то более доходчиво не объяснить. И понять ты это сможешь только начав использовать эти самые интерфейсы на практике дерэа в олове какую-то теорию. И водин момент вдруг поймёшь, что всё на самом деле так и есть, как описано в той ёбаной куче постов в бложиках, которые ты нагуглил. И сам бы ты теперь точно так же объяснял это "на пльцах".
>>164129241Сажа приклеилась
>>164128846Байтоеб порвался. Следить за кучей дыр в коде вместо того, чтобы использовать то, что сто раз отлажено тысячам людей. Настоящее говноедство.
>>164129241Всю жизнь у меня такой способ изучать что-то новое в кодинге. Я думал, что я один такой даун, а все вокруг сходу понимают.
>>164129105Дроч на производительность это самый явный признак восторженного нюфани.
>>164129354Я обычно пиню вкладку с непонятной хуйтой, где оно наиболее подробно описано, и периодически возвращаюсь и перечитваю. пока не допру, лол. Как-то раз простыня со стэкпириполнен по сримам akka с месяц так висела.
>>164125580 (OP)>пустой конструкторИмеешь в виду без параметров?
>>164129654Оп просто описал себя
>>164129654Да не, можно сделать просто пустой конструктор. Если тебе не нужно ничего предопределять при создании, например.
>>164125580 (OP)Ты еблан? Не можешь просто запомнить? Ты не понимаешь, как запоминать последовательности букв?
>>164129745Это все ясно, просто, может, терминология какая специфическая используется ОПом
>>164129745типа тогоpublic class IdiNahui { public IdiNahui() {}IdiNahui nahui= new IdiNahui();}
>>164130356У тебя тут бесконечная рекурсия. Так что нахуй иди.
>>164130476Какая еще рекурсия? Посмотри тут, например. http://www.isr.umd.edu/~austin/ence688r.d/java-basics/appl-complex1.d/Complex.java>public Complex Div( Complex cB ){>Complex div = new Complex();>div.dReal = (dR x dReal + dImaginary)/dDen;>div.dImaginary = (dR x dImaginary - dReal)/dDen;>return (div);}Хуй знает, как это работает. Я запутался.
>>164130671Я проебал закрывающую фигурную скобку после конструктора, думал что присваивание внутри. Прости пожалуйста.
>>164130671ты шо, гонишь?
>>164130847Не гоню, решил вкатиться в ООП называется.
>>164127644>например обьект клетка. у нее есть свойство картинка которая отображается на этой клетке.Объект на каждую клетку? Не пробовал растровый редактор запилить, типа фотошопа?
>>164125580 (OP)Сеим шит ОП, но у меня все еще хуже.Вроде все инструменты дали, все выучил.Но когда приходит время писать код, туплю и не знаю как все это блять реализовать.Чо за нахуй.
>>164130476Да похуй, главное что компилируется быстро, а юзер оперативочки добавит.
>>164131498Да похуй, потом пофикшу
>>164125580 (OP)Что значит пустой конструктор? Жай контекст задачи и сформулируй вопрос. Что именно а ООП тебе непонятно? Что-то в реализации?
>>164125580 (OP)Самое главный скилл в программировании - умение выделять правильные абстракции.
>>164132332--->>>164130356>>164130671
>>164130671Тут вообще нет конструкторов, етсь метод "public Complex Div( Complex cB )"В жабе конструктор есть всегда. Если ты его не указал, он сам сгенерится дефолтный без аргументов public IdiNahui() {}. Но тебе не всегда надо давать доступ к контсруктору человеку, который использует написанный тобой класс. Например если создание экземпляра осуществляется с помощью фабричных методов. Тогда ты явно указываешь дефолтный конструктор и делаешь его private: private IdiNahui() {}. Тогда экземпляр класса более никак не получить (сейчас мы не говорим о reflection и прочем). кроме как с помощью фабричных методов. которые ты предоставляешь.
>>164132781>Тут вообще нет конструкторовТам их два по ссылке.
>>164132512В этом примере ты обьявляешь класс с единственным методом - методом создания экземпляра класса (конструктором) и в этом методе ты создаешь новый экземпляр с помощью метода по умолчанию (конструктора), который вызывает метод по умолчанию (конструктор), который вызывает... Понял? Это называется рекурсия - метод (или функция), который в ходе выполнения вызывает сам себя. Если специальным образом не указать условия выхода из рекурсии, то она считается бесконечной.
>>164132984Нет там рекурсии.
полтора года назад ливнул с работы где получал двушку зеленивсе это время курил траву и играл в дота2сейчас снова пытаюсь вкатиться в работуя наверное тут самый успешный
>>164125580 (OP)>Нахуя вот нужен пустой конструктор?чтобы ты ахуевал, анон
>>164133272>дота2Ты тут самый долбоеб.
>>164133487го 1 на 1 на чорных или зассаллюксимбург, пароль zxcжду
>>164125580 (OP)Суть ООП - это удобство.Все в твоем проекте состоит из объектов. У каждого объекта могут быть свои параметры и методы (функции).Ты можешь создать какие угодно объекты (классы) и оперировать ими как тебе хочется, но тогда когда это нужно, естественно.У тебя есть игра и тебе нужно добавить юнитов в игровой мир, каждый юнит - объект, с параметрами: здоровье, местоположение, функция передвижения.В помощью процедурного программирования ты заебешься, потому что адекватно хранить объекты юнитов просто негде, разве что в массиве, но это говно, ибо нет ни методов, ни наследования, нихуя.Это все, что тебе нужно знать, а дальше не лезь дебил сука ебаный
>>164125580 (OP)Короче, если ты понял суть ООП, то твой код начинает документировать сам себя.Посмотри на уровень доступа: public, private, protected?Если, например, пустой конструктор - private, то автор кода как бы намекает тебе, что нехуй в конструктор что-либо писать.
>>164133829Лол, я всё это понимаю. Но не понимаю, например, что за хуйня происходит тут ---> >>164130671Особенно в методе Div.
>>164133829хранить то хуйня, можно и в массивеа вот задать им различное в нюансах, но схожее в общих чертах состояние и поведение - эт уже да.
>>164128846>правильные поцоны используют ецс>обычный массив вместо линкед листсейчас бы не отличать асимптотические и неасимптотические оптимизации и не знать алгоритмы на базовом уровневсегда горело с маня-программистов, которые придумывают свои костыльные велосипеды, например, в простой задаче на динамику или дерево отрезков
>>164133894я в душе не ебу, что там за язык, но ты, бля, читай код, а не задавай вопросы!У тебя есть функция div, которая возвращает "не-примитивный", сложный, КОМПЛЕКСНЫЙ ОБЪЕКТ, блять, структуру - не ебу, что за язык и как это там называется.Функция вычисляет значения двух переменных, пишет их в свойства объекта.Дальше ты кормишь этим свою мамашу.
>>164133894>public Complex Div( Complex cB ){>Complex div = new Complex();С помощью метода Div создается экземпляр класса Complex и сохраняется в переменную div класса Complex
>>164125580 (OP)ну кароч класс ето шаблон а объект это реальная хуйня построенная по шаблонуthis это способ для объекта обращатсья к самому себе
Меня больше массивы бесят, сука. Ещё их ебаное начало с 0. Хуярю игру, начинаю ебашить объекты в массивы, а им нужно точное значение задавать, много памяти расходовать не охота, а чуть что - вышел за границы, ссука нахуй.
>>164134229>обращатсья к самому себенахуя?
>>164125580 (OP)Нахуя тебе пpогpаммиpование вообще? Съеби, не занимай pынок.
>>164133566>го 1 на 1 на чорных или зассал>люксимбург, пароль zxc>жду
>>164134292ну не к тебе же уебану обращаться в случае чего
>>164134292чтобы иметь доступ не к абстрактным полям и методам а к конкретным этого вот экземпляра
>>164134336Какой рынок он занимает, мань? Найти толкового жуниора не проще, чем толкового сениора. У сениора хотя бы рекомендации и знакомые из приличных компаний есть.
>>164134336Петуха забыть спросили.
>>164134408Так в пеpспективе, же.
>>164132854Там они оба требуются потому что. Если бы был определён только конструктор с параметрами, он был бы единственным дефолтным конструктором, а там далее по коду используется и контсруктор без параметров.public class Run { class Test { protected String g; public Test(String g){ this.g = g; } } { Test t1 = new Test("hui"); Test t2 = new Test(); - никампилится }}
>>164125580 (OP)почитай карделли и лисков, они нормально про ооп распедалили.
>>164134962Разметка проебалась
>>164134962Понял. Наконец-то кто-то без выебонов пояснил, спасибо :з
>>164127644шьерт, я тетрис писал еще на дискетах вербатим через int21h
>>164135113На здоровье. Вот ещё совет для вкатывающегося - поставь IntelliJIDEA и кодь в ней. У неё охуенная поддержка жабы, всякие фишки может подсказать, какие-то неочевидные не первых парах неоптимизированные вещи оптимизирвоать и прочее. Код можно корректно форматировать по ctrl+alt+L, что немаловажно. Можно нагуглить анальные настрокий линтера или какой плагин, чтобы кодстайл оно тебе исправляло. Реально помогает на первых порах всякие мелочи исправлять, а п отом оно само в привычку входит. Лучше чем учить ебенячих размеров гайды по кодстайлу.
>>164134408Рынок жуниоров. Именно поэтому хер ты найдешь толкового жуниора, что приходят такие хипстеры которые даже ООП не могут, а ты сиди их собеседуй.
>>164125580 (OP)Про конструктор в любой книжке написано. Он нужен именно для того, чтобы показать компилятору, что ты создаешь объект с полным набором фич. То бишь - закрытыми от потных ручек макак внутренними методами и переменными. И конпелятор за этим свято начинает следить.
>>164134276Так нумеруй с 1. Блять, программирование для людей создавали, а не наоборот. В 0 элемент можешь ливер какой засунуть для пафоса.
>>164136052>Блять, программирование для людей создавали, а не наоборот.Учу ассемблер и мне кажется, что ты не прав.
>>164134073>мое лицо, когда десктопный питух пытается тег div обернуть в свою туалетную бумагу терминов и абстракциймимо веб макака