Фреймворк

Материал из Неолурк, народный Lurkmore
Перейти к навигации Перейти к поиску

Фреймворк (en. framework - рабочее пространство) — достаточно популярная и изощрённая уебанская хуйня из области объектно ориентированной парадигмы для ленивых пидерастов не желающих писать весь код вручную или использовать бибилиотеки. Фреймворк это каркас для вашего программного продукта. Если вы решили использовать в работе фреймворк, то вы полностью должны «играть по его правилам» ибо иначе никак. Взамен он даёт достаточно лёгкий (по сравнению с полностью ручным вариантом) инструментарий в реализации задуманного, если конечно данный, выбранный вами, фреймворк в принципе позволяет это сделать.

Как правило сабж отличается крайней степенью капризности и не понятности в случае не имения документации, коя, естественно, только на официальном сайте и на английском языке, причём далеко не разговорном и перевести подобную ахинею не так то уж и просто. В случае автоматического перевода вообще смрат о котором и думать не хочется. В общем полный пиздец одним словом. И это касается даже самых популярных фреймворков не говоря уже о более специфических и редких. Помешанные на объектно ориентированно парадигме (так модной в лихих 90-ых) языки наподобие Java, C# более чем полностью состоят из собственных родных фреймворков когда дело касается графического пользовательского интерфейса (GUI).

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

Как всё происходит?[править]

Вы берёте нужный вам framework и начинаете читать его правила архитектуры построение приложения, которые он вам явно навязывает. Всё взаимодействие с ним происходит за счёт изменения параметров в стандартных алгоритмах самого фреймворка и так же при реализации абстрактных классов (интерфейсов) (так же подобная тема называется «точками монтирования» функционала фреймворка) и расширений своих классов от базовых (банальное расширения фреймворка). Свободы мало зато код пишется в разы быстрее. НО, блять, всегда знайте, что техническое задание может серьёзно измениться и тогда, скорее всего, вам пиздец! Ибо как такую неведомую хуйню реализовать на текущем каркасе хуй знает, а переписывать всё с нуля своими руками уже нет времени ибо вы просто нагло его проебали, когда надо было писать код руками, а вы воспользовались готовым решением (фреймворком). Хорошо если фреймворк позволяет много свободы и тут на помощь могут придти библиотеки и прямые руки, но если нет.

В промышленности[править]

Очень любимое понятие у «продвинутых» работодалей. Таковые частенько любят оценивать кандидатов по количеству фреймворков, которые были отмечены галочками как известные в опросе или резюме. На деле, у матёрых спецов, ничего кроме чувства отвращения это слово не вызывает. Самые популярные фреймворки, например от Microsoft тот же MVC, это как бэ отождествляют собой.

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

Что есть фреймворк?[править]

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

App.png Весьма полезная вещь, позволяет машинам работать с помощью коммандычей
МетаПрограммаDRM (SecuROMStarForceАналоговая дыра) • БагБот (Автоответчик) • Варез (Repack) • ГлюкГуйДонатКопирайт (By design) • ЛогНюкРут (Не работай под рутом) • Спортивное программированиеМегапиксельКомпьютерВерсия 2.0КодОбфускацияСкриншотДатамайнПлагинТекстовый файлБольшие данныеАльфа и бета-тестыТаймстампКэшШаблоныHello WorldНейросетиФайлИнсталляцияВидеоМощный сбой Microsoft 19 июля 2024 годаCrowdStrikeПроект GNUUserscriptDxvkVkd3dБратан хорош давай давай впередКонечный автоматLumen
ФичиБагрепорт12309BSODCookiesEmbrace, extend and extinguishFL StudioSheep.exeWinlogon.exeБубенЗащита от дуракаКостыльМашинный переводПасхальные яйцаСвистелки и перделкиСм. рис. 1Съешь ещё этих мягких французских булокTermuxGNU MetroИндусский кодНескучные обои • Сжатие (За сжатие ДжипегаШакалШкала) • Работает — не трогайРандомайзерPDF (Распознавание PDF) • Дело Google в ФАСЧат-ботXMLМакросКритическая ошибкаФреймворкСинонимайзерSourceТрёхмерное отслеживаниеТрассировка фотоновHZB OcclusionДаунгрейд RTX 4070TressFXАвтопереводчик
ВредоносноеБотнетБрутфорсВинлокЗвонилкаКитайские пингвиныПиксель смертиТроянЧервь МоррисаBonziBuddyMediaGetBrowser hijackingTinderМиссис МажорУтечка буфера обменаWin 10 TweakerОпараш Mozilla FirefoxЯндекс.МузыкаКрэкерБезопасность через умолчаниеGrifter.aviTrojan.Winlock.DeathМиссис МажорСредаDirectStorageDriverpackГенератор случайных чиселDisable Core 0РомхакингDDrawCompatWingetCreateWinGetCoowonЯндекс МессенджерVCPkgSELinux
КомпанииApple / Apple (AppleScript) • GoogleMicrosoftSAPЯндекс
Движения8-bitOpen source (КрасноглазикиЛинуксоиды) • Вирусная сценаДаунгрейдДемосценаМоддингMMDDirectDrawЛагиБлокировка Дискорда в РоссииOpera GXНесоответствие MIME-типаRenoisePygameLs (UNIX)МетаданныеПатчNginxПиксельЭмуляторSearxТамТамMallocСвязный списокSOLID
Офис3DS MAXGIMPGNU EmacsMovie MakerMS Paint • OpenOffice • PowerPointviMicrosoft WordExcelБлокнотФотошопАнтивирус КасперскогоAvast!TikZShareXAlternativeToСкрепышMicrosoft OfficeТекстовый редакторWeChatZoomДиспетчер задачMicrosoft CortanaWinampBallonTranslatorKerish DoctorОбщая ошибкаFirefox: Как один баг сломал весь YouTubeМеждулициеMeld StudioLadybirdCheat Engine
ОСAndroidBSDDOSMenuetOSReactOSWindows (Phone 7Phone 878Vista) / МаздайЛинуксРусская ОСФантом ОСIndex.php
БраузерыInternet ExplorerОпера / Opera • Тормозилла (ОгнелисLolifoxMozilla FirefoxFirefoxFirefox Klar) • Хром (шпионаж) • SafariЯндекс.БраузерУведомления в браузереVivaldiTor-браузерЗосимаФронтенд
ИнтернетAdobe Systems (Flash) • I2PLow Orbit Ion CannonTorTunatic • Чат−клиенты (MirandaQIPSkypeЖабберDiscordVIPole) • HTTPSПрокси-сервер (Proxifier) • Торрент (Magnet-ссылкаΜTorrent) • JavaScriptCSSHTMLБаннермейкерИзменение TTL сетевых пакетовКапчаICQFiddlerViberZonaSteamSillyTavernWickr Me
РазработкаBrainFuckCC++C#JavaHaskellАссемблерChaos ConstructionsBATMySQLGitHubAutoHotKey (AutoHotInterception) • Sublime TextAPK (APKPureзапрет) • BASICPerlPythonPHPФоркUnity3DSAISIPСАПРФлагUTAUФласк макросАуработRaidCallAdobe MingОфициальный™ список кошерных программDevOpsНиколай Дуров
ЛюдиВеб-мастерLovinGODБалмерГейтсГенерал ФейлорДжобсМитникПоттерингде РаадтСпольскиСтоллманТорвальдсШахиджанянAche666Марк ЦукербергЕвгений ПоповДенис КумпонМассовая компьютерная безграмотность
КостылиCygwin • PunkBusterT9WineWishmasterАнтивирусыХакинтошСборки WindowsDenuvoЧистая установкаКалькулятор Consul WarMicrosoft StoreUBlock OriginLightshotAdBlockSearchApp.exeCPU-ZГуглPhotoshopКаптча с пчёламиВзлом Windows через Metasploit
Команды^H^WAlt+F4Ctrl+Alt+Delman/me/quitrm -rf
Movax1010h.png Глубокий смысл скрыт в этих неестественных языках
Языки программированияПромышленные: BATC#CC++JavaJavaScript (AJAX) • PascalPerlPHPPythonRubyABAPАссемблерВасикFortran (Профессор)
Эзотерические: BrainFuckHQ9++ErlangForthHaskellLISP (My other car) • PrologTclΤΕΧOracleMySQLGolangВ++Scala
ПрофессииБыдлокодерПрограммистТестировщикХакерХеллоуворлдщикIT-звёздыПрограммист (существо)
Методы и стилиReverse EngineeringАнти-паттернВыстрелить себе в ногуГрязный хакКод (индусский) • КостыльМетод научного тыкаПомолясьСвистелки и перделкиОчередьСпортивное программированиеОбфускацияБета-тестАльфа-тестШаблоныRegReplaceФреймворкБыдлокодIndex.phpОхота за жукамиКуМирКлеточный автомат
Средства разработкиSublime TextПодсветка синтаксиса кодаUnstable DiffusionAPIPythonTutorCodeWarsDataCampUnity3DКнижный PythonMallocСвязный списокSOLIDООПУказательNULLWeLang++
ЛюдиИлья КанторЮрий КлючевскийЭдуард ЛаасЭдвард СноуденСеймур Пейперт
Прочее++i + ++iDeadline%s640 килобайтCMSDummy modeЕГГОГFoobarGod is real, unless explicitly declared as integerGOTOIfconfigKISSRegExpSICPsql.ruXyzzyДискетаИнжалид дежицеКОИ-8ЛогМанРекурсияСУБДТест ТьюрингаУмение разбираться в чужом кодеФаза ЛуныФатальный недостатокПроблема 2000ТаймстампКэшЗапись в файл без кэша (Perl)Танцы с бубномКодач