All Projects → mokevnin → You Don T Know Oop

mokevnin / You Don T Know Oop

Знаете ли вы ооп?

Projects that are alternatives of or similar to You Don T Know Oop

Battleship
An Object-Oriented VBA experiment
Stars: ✭ 66 (-61.18%)
Mutual labels:  oop, polymorphism
Python And Oop
Object-Oriented Programming concepts in Python
Stars: ✭ 123 (-27.65%)
Mutual labels:  polymorphism, oop
OOP-In-CPlusPlus
An Awesome Repository On Object Oriented Programming In C++ Language. Ideal For Computer Science Undergraduates, This Repository Holds All The Resources Created And Used By Me - Code & Theory For One To Master Object Oriented Programming. Filled With Theory Slides, Number Of Programs, Concept-Clearing Projects And Beautifully Explained, Well Doc…
Stars: ✭ 27 (-84.12%)
Mutual labels:  oop, polymorphism
Java-Programs
Java Practiced Problems including concepts of OOPS, Interface, String , Collection.
Stars: ✭ 51 (-70%)
Mutual labels:  oop, polymorphism
Dynamix
🍥 A new take on polymorphism in C++
Stars: ✭ 504 (+196.47%)
Mutual labels:  polymorphism, oop
Oop
Interface and abstract class - simple and easy explanation
Stars: ✭ 109 (-35.88%)
Mutual labels:  oop
Tempy
Python Object Oriented Html Templating System
Stars: ✭ 126 (-25.88%)
Mutual labels:  oop
Dev Stuff
😎 Programming stuff for everyone. Collection of articles, videos about architecture, Domain Driven Design, microservices, testing etc.
Stars: ✭ 105 (-38.24%)
Mutual labels:  oop
Off
OFF, Open source Finite volume Fluid dynamics code
Stars: ✭ 93 (-45.29%)
Mutual labels:  oop
Lw oopc
modified from http://sourceforge.net/projects/lwoopc/
Stars: ✭ 159 (-6.47%)
Mutual labels:  oop
Restaurantapp
Android Restaurant Application with QR Code Reader
Stars: ✭ 133 (-21.76%)
Mutual labels:  oop
Low Level Design Primer
Dedicated Resources for the Low-Level System Design. Learn how to design and implement large-scale systems. Prep for the system design interview.
Stars: ✭ 2,706 (+1491.76%)
Mutual labels:  oop
Flap
Fortran command Line Arguments Parser for poor people
Stars: ✭ 109 (-35.88%)
Mutual labels:  oop
Frontend Hard Mode Interview
《前端内参》,有关于JavaScript、编程范式、设计模式、软件开发的艺术等大前端范畴内的知识分享,旨在帮助前端工程师们夯实技术基础以通过一线互联网企业技术面试。
Stars: ✭ 2,338 (+1275.29%)
Mutual labels:  oop
Wp Rest Starter
Starter package for working with the WordPress REST API in an object-oriented fashion.
Stars: ✭ 105 (-38.24%)
Mutual labels:  oop
Sprite Wxapp
spritejs 小程序版
Stars: ✭ 138 (-18.82%)
Mutual labels:  oop
Softuni
SoftUni Courses
Stars: ✭ 98 (-42.35%)
Mutual labels:  oop
Dot
formalization of the Dependent Object Types (DOT) calculus
Stars: ✭ 132 (-22.35%)
Mutual labels:  oop
Libmodule
C simple and elegant implementation of an actor library
Stars: ✭ 118 (-30.59%)
Mutual labels:  oop
Novagram
An Object-Oriented PHP library for Telegram Bots
Stars: ✭ 112 (-34.12%)
Mutual labels:  oop

Знаете ли вы ООП?

Тема объектно-ориентированного программирования на протяжении многих лет (десятилетий?) является предметом жарких споров. Хорошо порывшись в интернете, можно найти десятки разных толкований, многие из которых утверждают взаимоисключающие вещи. Даже если вы попробуете задать вопрос "что такое ооп" десяти разным разработчикам, то, скорее всего, получите 10 разных ответов. Да, местами они будут похожи, но никто не даст формальных определений и в деталях все будет отличаться. Иногда, от людей уставших спорить, можно услышать "ООП у каждого свое", что в какой-то степени является правдой.

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

Каждый год на популярных сайтах появляются статьи в стиле "вот что такое настоящее ооп" и рядом с ними "почему ооп не работает" или "я не понимаю ооп". Погуглите: "why oop is bad".

Попробуйте критически взглянуть на эту ситуацию. Как такое возможно? Почему настолько ужасная ситуация сложилась именно вокруг ООП? Почему никто не разоблачает автоматное, реактивное или функциональное программирование?

В этой книге я постараюсь максимально полно ответить на все вопросы, развенчать мифы, отделить мух от котлет, подвести формальную базу под интуитивные (и не очень) понятия. На протяжении всего повествования, я буду приводить примеры на совершенно разных языках: ruby, java, erlang, JavaScript, smalltalk, haskell, clojure и других. Основным языком повествования, при этом, я, все же, выбрал JavaScript в силу его широчайшей распространенности с одной стороны и удобством представления изучаемых концепций с другой.

Структура книги

Первая часть

Чем ооп не является

Вторая часть

Вперед в прошлое

Третья часть

Чем ООП является

Четвертая часть

Паттерны

На кого рассчитана книга

Книга рассчитана на тех кто уже, так или иначе, знаком с фразой "полиморфизм, наследование, инкапсуляция". Особенно она полезна тем кто уже активно программирует и хочет систематизировать свои знания. Новичкам я советую смотреть по ситуации. Там где имеет смысл, я буду кратко раскрывать понятия или давать соответствующие ссылки для самостоятельной подготовки к уровню материала.

Авторский опыт

С 2007 года, я успел поработать в компаниях начиная от кровавого энтерпрайза и заканчивая небольшими стартапами, попутно, не раз, меняя стек разработки. За это время прошел путь от разработчик до технического директора, основал и развил несколько филиалов компаний, очно вырастил сотню разработчиков в рамках созданного центра обучения, создал и закрыл несколько аутсорс компаний и, в конце концов, вместе с Рахимом создал новый хекслет.

Во многом именно хекслет стал толчком к написанию этой книги.

Дисклеймер

То что вы видите прямо сейчас - это черновик. Подразумевается итеративное развитие контента, поэтому в начале будет больше похож на сборник рандомных мыслей. Прошу понять и простить. Конструктивный фидбек (подкрепленный доказательной базой из компьютерных наук) всячески приветствуется.

Общение по книге происходит здесь: http://slack-ru.hexlet.io в канале #computer_science

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].