CourseHunter
  • Категории
    • Frontend logo Frontend
      • Angular logo Angular
      • HTML logo HTML
      • CSS logo CSS
      • JavaScript logo JavaScript
      • Vue logo Vue
      • jQuery logo jQuery
      • React logo React
      • AngularJS logo AngularJS
      • Backbone logo Backbone
      • TypeScript logo TypeScript
      • Ember logo Ember
      • Next.js logo Next.js
      • Elm logo Elm
      • Svelte logo Svelte
      • Single SPA logo Single SPA
      • Three.js logo Three.js
      • D3.js logo D3.js
      • RxJS logo RxJS
      • WebGL logo WebGL
      • barba.js logo barba.js
    • Backend logo Backend
      • PHP logo PHP
      • Python logo Python
      • Ruby on Rails logo Ruby on Rails
      • Yii logo Yii
      • Laravel logo Laravel
      • SQL logo SQL
      • Ruby logo Ruby
      • Symfony logo Symfony
      • Java logo Java
      • Scala logo Scala
      • Node.js logo Node.js
      • MongoDB logo MongoDB
      • Golang (Google Go) logo Golang (Google Go)
      • Slim logo Slim
      • Silex logo Silex
      • Firebase logo Firebase
      • C Sharp (C#) logo C Sharp (C#)
      • Deno logo Deno
      • Redis logo Redis
      • Django logo Django
      • NestJS logo NestJS
      • Spring logo Spring
      • Spring Boot logo Spring Boot
      • Spring Data logo Spring Data
      • Spring Cloud logo Spring Cloud
      • Spring Security logo Spring Security
      • Spring Integration logo Spring Integration
      • Spring HATEOAS logo Spring HATEOAS
      • Spring MVC logo Spring MVC
      • Elixir logo Elixir
      • Phoenix logo Phoenix
    • System programming logo System programming
      • Rust logo Rust
      • WebAssembly logo WebAssembly
      • C++ logo C++
    • Marketing logo Marketing
      • SEO logo SEO
    • Video and 3D logo Video and 3D
      • Blender logo Blender
      • Cinema 4D logo Cinema 4D
      • ZBrush logo ZBrush
    • Graphic logo Graphic
      • Figma logo Figma
      • Sketch logo Sketch
      • Photoshop logo Photoshop
      • After Effects logo After Effects
      • Illustrator  logo Illustrator
      • Adobe XD logo Adobe XD
      • Lightroom logo Lightroom
      • CorelDRAW logo CorelDRAW
    • DevOps logo DevOps
      • AWS logo AWS
      • Azure logo Azure
      • Docker logo Docker
      • Git logo Git
      • GitHub logo GitHub
      • Gitlab logo Gitlab
      • Google Cloud logo Google Cloud
      • Grafana logo Grafana
      • Kubernetes logo Kubernetes
      • Jenkins logo Jenkins
      • Terraform logo Terraform
      • Другое logo Другое
    • Tools logo Tools
      • GraphQL logo GraphQL
      • Flux logo Flux
      • Webpack logo Webpack
      • Ansible logo Ansible
      • Gulp logo Gulp
      • Grunt logo Grunt
      • Visual Studio Code logo Visual Studio Code
      • VIM logo VIM
      • OpenCV logo OpenCV
      • Salt logo Salt
      • SVN logo SVN
      • Atom logo Atom
      • Elasticsearch logo Elasticsearch
      • Сборки, готовые решения logo Сборки, готовые решения
      • Electron logo Electron
      • Chrome DevTools logo Chrome DevTools
      • Yarn logo Yarn
      • Babel logo Babel
      • Grep logo Grep
      • npm logo npm
      • Vite logo Vite
      • Gatsby logo Gatsby
      • PhpStorm logo PhpStorm
      • Webflow logo Webflow
      • Hibernate logo Hibernate
      • Socket.io logo Socket.io
      • Bash logo Bash
    • Разработка мобильных приложений logo Разработка мобильных приложений
      • React Native logo React Native
      • Ionic logo Ionic
      • Swift logo Swift
      • Progressive Web App (PWA) logo Progressive Web App (PWA)
      • Core Data logo Core Data
      • Xamarin logo Xamarin
      • NativeScript logo NativeScript
      • Dart и Flutter logo Dart и Flutter
    • Gamedev logo Gamedev
      • Unreal Engine logo Unreal Engine
      • Unity logo Unity
    • CMS logo CMS
      • Wordpress logo Wordpress
      • OpenCart logo OpenCart
      • Drupal logo Drupal
      • Joomla logo Joomla
      • 1C-Bitrix logo 1C-Bitrix
      • MODX logo MODX
      • Magento logo Magento
      • Shopify logo Shopify
    • Blockchain logo Blockchain
      • Криптовалюты logo Криптовалюты
      •  Decentralized Applications (dApps) (Web 3) logo Decentralized Applications (dApps) (Web 3)
    • Тестирование logo Тестирование
      • Postman logo Postman
      • Selenium logo Selenium
      • Appium logo Appium
      • Protractor logo Protractor
      • WebdriverIO logo WebdriverIO
      • Cypress logo Cypress
      • Playwright logo Playwright
    • Другое logo Другое
      • Linux logo Linux
      • WebRTC logo WebRTC
      • OpenGL Shading Language (GLSL) logo OpenGL Shading Language (GLSL)
    • Подготовка к собеседованию logo Подготовка к собеседованию
    • Обработка и анализ данных logo Обработка и анализ данных
    • Информационная безопасность logo Информационная безопасность
      • Этический взлом / Тестирование на проникновение logo Этический взлом / Тестирование на проникновение
    • Английский язык logo Английский язык
    • Конференции logo Конференции
  • Источники
  • Все курсы
    • Популярные
    • Бесплатные (100+ Курсов)
  • Разделы
  • Книги
    • Бесплатные
    • Популярные
  • Краудфандинг logo Краудфандинг
🇺🇸 English
🇷🇺 Русский
🇺🇦 Українська
Голубая
Фиолетовая
Cветлая
Терминал
Norton
Войти
Главная страница Категория php Советы по отделению

Советы по отделению

Recipes for Decoupling

Matthias Noback logo Matthias Noback
Советы по отделению logo Начать Сейчас
Категория
PHP
Дата добавления
18.12.2022
Язык
Английский
Дата выхода
29.06.2022

Программное обеспечение никогда не "готово" до конца. Мир вокруг вашей программы меняется быстрее, чем вы этого хотите. Фреймворки и библиотеки заброшены и заменены чем-то лучшим (или просто чем-то новым), поэтому вам нужно мигрировать. Вы можете немного отложить эту работу, но со временем вам придется наверстать упущенное, иначе ваш проект может оказаться безнадежно устаревшим. Я уверен, что вы знаете один или два таких проекта! Как вы можете упростить все это для себя и будущих сопровождающих проект? Ключевое слово "Decoupling". Вы можете изменить дизайн своего кода, чтобы защитить его от изменений в любой зависимости, на которую опирается ваш проект. Разделение вашего кода — это способ сделать его перспективным (без выполнения слишком большого количества работы, которая «вам не понадобится»).


Около 10 лет назад я начал искать способы отделить свой код, но поначалу мне было трудно сделать это эффективно. Мой код был разделен в неправильных местах или неправильным образом. Я лучше разобрался в этой теме после нескольких интенсивных опытов с некоторыми унаследованными проектами, большой миграции фреймворка и полного переписывания проекта (я уверен, что этого можно было бы избежать). Я собрал много рецептов для развязки по пути. Эта книга дает вам практический обзор распространенных ситуаций, которые часто страдают от непреднамеренного высокого уровня связанности в веб-приложениях. Конечно, он также дает вам пошаговые рецепты для улучшения этих ситуаций. Примеры в этой книге показывают, как отвязаться от веб-фреймворка, механизма шаблонов, тестового фреймворка, ORM и так далее.

Разъединение — это одно, а оставаться разъединенным — совсем другое. Вот почему в этой книге мы сосредоточимся на том, как закрепить правила разделения с помощью PHPStan, автоматизированного инструмента статического анализа для PHP. Таким образом, нам не нужно полагаться на дисциплину и обзоры кода, но мы можем позволить инструменту указать на возможные ошибки связывания.

Посмотреть больше

Авторы Recipes for Decoupling

Изображение источника Matthias Noback

Matthias Noback

Matthias Noback - профессиональный веб-разработчик (с 2003 года). Он живет в Зейсте, Нидерланды, со своей девушкой, сыном и дочерью. У Матиаса есть собственная компания по веб-разработке, обучению и консультированию под названием Noback's Office. Он уделяет большое внимание бэкэнд-разработке и архитектуре, всегда ищет лучшие способы проектирования программного обеспечения.

Автор
Посмотреть
Категории
PHP logo
PHP
Другое logo
Другое
Комментарии
User Avatar
Команда внимательно читает ваши комментарии и оперативно на них реагирует. Вы можете спокойно оставлять запросы на обновления или задавать любые вопросы о курсе здесь.

Другие материалы в этой категории

Rector - Сила автоматизированного рефакторинга logo

Rector - Сила автоматизированного рефакторинга

Matthias Noback, Tomas Votruba
English
View
Премиум

Ресурс видеоуроков программирования для front и back end разработчиков. Бери знания своего профиля у нас, ведь мы самые лучшие блеать. Серьезно.

Категории
Все категории JavaScript React.js Python Java Golang (Google Go) Другое TypeScript Подготовка к собеседованию Другое (Frontend) Другое (ИИ)
Источники
Все источники Academind Pro Alex Chiou Aurimas Griciūnas balun.courses frontendmasters Santiago Valdarrama udemy zerotomastery.io Дмитрий Холстинин
Telegram CourseTrain Цена Контакты Распространенные вопросы Плейлисты Приватность Условия
Темы:
Язык: