Создание фреймворка. Виды и шаблоны


Содержание материала:

Фреймворк — важный инструмент программиста. Обзор HTML/CSS, PHP и Python-фреймворков

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

Фреймворк: что это?

Рассмотрим слово «фреймворк«, которое является действительно новым неологизмом, не так давно появившимся в нашем языке. Слово начали использовать примерно в первой половине XXI века. Если рассматривать перевод слова с английского — это «конструкция» или «структура».

Суть фреймворка заключается как раз в переводе слова. Это программная среда специального назначения, своеобразный каркас, используемый для того, чтобы существенно облегчить процесс объединения определенных компонентов при создании программ. Это основа, которая позволяет добавлять компоненты в зависимости от потребностей. База, на которой можно сформировать программу любого назначения достаточно быстро и без особых затруднений.

Если сравнивать динамическую библиотеку (DLL), которая отличается весьма ограниченным функционалом, и фреймворк, считающийся основой программ — можно выделить существенное преимущество фреймворков. Именно фреймворк является связующим звеном, которое объединяет все используемые программные компоненты. Также внутри фреймворка зачастую есть необходимые тематические библиотеки.

Классификация фреймворков:

  • Фреймворки приложений;
  • Фреймворки программных моделей;
  • Фреймворки концептуальных моделей.

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

Сравниваем CMS, чистый код и фреймворк

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

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

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

Использование готовой CMS. Данный вариант является идеальным для людей, которые мало понимают в сегменте веб-разработки. Вы сможете оперативно создать сайт, соответствующий вашим требованиям. Есть возможность вносить необходимые коррективы через административную панель. Но данный подход не пользуется особой популярностью — главным минусом является огромное количество ограничений.

Исходя из сравнительных характеристик, можно понять, что именно фреймворк — «золотая середина» между написанием сложного кода и применением ограниченной по функционалу CMS. Вы получаете уже готовый каркас для своего проекта, при этом не теряя гибкости в плане функционала. Фреймворки разделяют по принадлежности к языку программирования, к которому они относятся.

Рассмотрим фреймворки, их типы, особенности, чтобы помочь каждому, кто захочет воспользоваться данным способом для создания сайта.

HTML/CSS-фреймворки: их главные особенности

Bootstrap — этот фреймворк является невероятно популярным и востребованным, его представили еще в начале 2011 года. Адаптивность (адаптивная верстка) — его главное преимущество. Bootstrap позволяет создавать проекты с невероятно отзывчивым, стильным дизайном — проект будет автоматически подстраиваться, учитывая размер экрана компьютера или мобильного устройства пользователя, просматривающего сайт. К преимуществам относится: большое количество стилей, шаблонов, постраничный дизайн — это существенно облегчает создание сайта.

Bootstrap стал столь популярным из-за огромного количества достоинств, в нем практически отсутствуют недостатки. Это не только HTML/CSS-фреймворк, в Bootstrap также включены плагины и готовые стили JS/Jquery. Знание Bootstrap часто является одним из обязательных требований работодателей.
Официальная страница getbootstrap.com

Semantic UI — используется для создания переносимых интерфейсов. Данный фреймворк можно назвать достаточно молодым, однако стоит отметить его постоянное развитие. В нем можно найти огромное количество кнопок и других элементов, необходимых для работы — изображения, иконки, надписи.
Официальная страница semantic-ui.com

Foundation — данный фреймворк является одним из популярных в сегменте front-end-фреймворков. Последние версии отличаются улучшенным функционалом для современных мобильных устройств. Благодаря семантическому подходу, есть возможность использования SCSS, написания более чистого кода в HTML. Данный фреймворк является идеальным для ситуации, когда нужно быстрое прототипирование.
Официальная страница foundation.zurb.com

Pure by Yahoo! — в данном фреймворке есть несколько небольших CSS-модулей, которые хорошо подойдут для любого современного проекта. Название фреймворка, характеризует его основную особенность — ничего лишнего, только необходимый, ничем не утяжеленный программный каркас, который прекрасно подойдет для создания сайта.
Официальная страница purecss.io

Uikit — фреймворк отличается модульной, легкой структурой. Есть несколько особенностей, которые позволяют ему выделяться на фоне современных фреймворков. Это markdown — возможность предварительно просмотреть страницу сайта в режиме реального времени. Также можно отметить синтаксическую подсветку для HTML.
Официальная страница getuikit.com

PHP-фреймворки: основные особенности

Yii — достаточно «возрастной» фреймворк, который продолжает обновляться в наши дни. Отличается удобным функционалом — кэширование, высокая производительность, полная обработка ошибок, возможность переноса (миграции) существующих баз данных, использование jQuery и другое. Фреймворк Yii отличается своей простотой, можно быстро освоить его основы, нет никаких сложностей в работе и использовании основного функционала. Данный PHP-фреймворк часто советуют людям, которые делают первые шаги в понимании PHP-программирования.
Официальная страница yiiframework.com

CodeIgniter — еще один «возрастной» фреймворк, появившийся в начале 2006 года. Именно тогда состоялся его публичный релиз. Среди основных преимуществ этого фреймворка:
— Хорошая документация;
— Небольшой вес и быстрая установка;
— Простота использования.
Многие используют CodeIgniter в качестве базы для обучения — его простота действительно считается наиболее значимым преимуществом. Постоянно появляются новые версии, каждая из которых отличается большим количеством нововведений, исправленных багов.
Официальная страница codeigniter.com

Symfony — невероятно стабильный, мощный фреймворк, который специалисты рекомендуют применять для созданиях крупных проектов. Значительный функционал, гибкость в настройках — популярность этого фреймворка обусловлена его преимуществами. Присутствует огромное количество полезных, многоразовых компонентов, которые можно использовать для создания большого сайта. Сюда можно отнести шаблоны, настройки форм, безопасность.
Официальная страница symfony.com

Laravel — частый лидер разнообразных опросов и рейтингов, посвященных php-фреймворкам. Проект является действительно многообещающим, получил признание достаточно опытных специалистов. Фреймворк просто освоить, является идеальным вариантом для небольших, а также средних по сложности проектов. Подойдет для быстрого, удобного написания требуемого кода.
Официальная страница laravel.com

Phalcon PHP — отличается открытым кодом (языки программирования C, C++, PHP), поддержкой практически всех современных ОС. Производительность этого фреймворка находится на высоком уровне — это подтверждено множеством специализированных тестирований, и, как следствие, его популярностью. Есть возможность использования на собственном сервере.
Официальная страница phalconphp.com

Python-фреймворки: главные особенности

Flask — отличается минимальным количеством базового функционала, но является расширяемым. В любой момент можно добавить необходимый функционал, учитывая особенности конкретного проекта. Благодаря большому количеству расширений, у вас не возникнет проблем с реализацией собственной задумки. Подходит для начинающих программистов в качестве первого знакомства с phyton-фреймворками.
Официальная страница flask.pocoo.org

Web2py — его основой является концепция RAD(rapid application development) – быстрая разработка приложений. Это позволяет программистам оперативно создавать качественные продукты, при этом не придется затрачивать слишком много сил или времени. Разработчики постарались сделать фреймворк максимально простым и эффективным. Полностью открытый код позволяет создавать любые динамические сайты на языке Python. Фреймворк отличается масштабным функционалом и производительностью.
Официальная страница web2py.com

Django — фреймворк является очень популярным в целом, он лидирует в своем сегменте благодаря простоте и функциональности. Во-первых, для старта не нужны глубокие знания языка программирования Python. А благодаря DRY (Don`t repeat yourself)-принципу написание кода упрощается — вам не придется повторно вписывать строки, которые уже использовались, фреймворк самостоятельно это сделает, при этом код будет лаконичным и эффективным. Наследование шаблонов, а также стандартная структура — основные преимущества этого python-фреймворка. Имеется также система администрирования – CMS Django.
Официальная страница djangoproject.com

TurboGears — «долгожитель» своего сегмента, структура этого фреймворка оставлена из WSGI — компонентов (например, Pylons, CherryPy), позволяющих создавать любые современные проекты. Фреймворк является действительно мощным, отличается приличным функционалом. Есть поддержка разных баз данных, возможность масштабирования, недостатков практически нет.
Официальная страница turbogears.org

Tornado — у него есть главная особенность, которая сказывается на популярности — решение проблемы 10 000 соединений. Благодаря особенностям сервера, этот фрейворк может прекрасно справляться с тысячами одновременных подключений.
Официальная страница tornadoweb.org/en/stable

Итак, мы рассмотрели наиболее популярные HTML/CSS, PHP и Python-фреймворки, которые помогут вам при создании сайтов. Какой из них выбрать — зависит от вашего проекта и необходимых для реализации условий и характеристик фреймворка — выбор за вами. И, конечно, каждый фреймворк требует изучения и практики применения, только в умелых руках, он творит настоящие чудеса!

21 бесплатный CSS3-фреймворк для веб-разработки

Сама по себе история CSS3 очень увлекательна. Это одна из тех технологий, которые дают нам возможность подробно рассмотреть развитие структуры Сети. Мы можем увидеть, когда впервые были введены такие вещи, как медиа-запросы . Это дает возможность понять, как долго существует адаптивный веб-дизайн, CSS framework и как много было достигнуто за такое короткое время.

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

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

Material Framework

Material Design — это способ рассказать сообществу, как можно достичь красивых изменений, не затрачивая много времени на проектирование и планирование, а применяя научно обоснованные принципы в простой концепции веб-дизайна.

Material Design приобретает все большую популярность с тех пор, как Google сделал спецификации общедоступными. С момента его появления уже успел увидеть свет целый ряд фреймворков и руководств, целью которых является помощь дизайнерам / разработчикам в использовании Material Design в своих проектах.

Material Framework — это один из немногих Material Design CSS framework , которые мы будем рассматривать в этой статье. Он является одним из самых простых в использовании. Он использует только CSS , поэтому вам нужно только загрузить библиотеку CSS и обратиться к документации, чтобы узнать, как работает синтаксис и как начать использовать элементы Material Design.

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

Materialize

Materialize является одним из тех фреймворков, которые превосходят своих конкурентов по функциональным возможностям. Materialize получил более 15000 звезд на GitHub , что делает его самым популярным CSS-фреймворком на основе Material Design . Команда проекта сосредоточила свои усилия на том, чтобы предоставить пользователям четыре различных категории элементов: CSS , JavaScript , « Мобильные » и « Компоненты ». Каждая категория состоит из целого ряда примеров с описанием того, как лучше применять Material Design в конкретных ситуациях.

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

Essence

Компактный Material Design CSS framework , который использует оригинальное руководство по стилям из официальной спецификации Material Design и сочетает его с популярной библиотекой ReactJS .

Используйте весь потенциал Essence , чтобы создавать быстрые и надежные интерфейсы мобильных и веб-приложений. Стили и компоненты Essence задаются очень простым синтаксисом, что позволяет начать работу с фреймворком уже после нескольких коротких уроков.

Bootstrap

Bootstrap 3 ( текущая версия, пока Bootstrap 4 готовится к выходу ) является самым популярным в мире front-end фреймворком для создания сайтов, макетов веб и мобильного дизайна.

Хотя Bootstrap не является только CSS framework, CSS3 — это одна из основных частей процесса разработки на Bootstrap . При этом фреймворк позволяет протестировать современные элементы дизайна и функции CSS3 . CSS составляющие Bootstrap могут быть использованы для построения сеток, форм, кнопок, управления изображениями, реализации подсказок и работы с адаптивным дизайном.

Semantic UI

Semantic в последние несколько лет стал довольно популярен, и сегодня можно часто видеть, что его подход к проектированию применяется другими фреймворками и инструментами, которые допускают использование сторонних руководств по стилям. Основным преимуществом Semantic является разнообразие элементов, которые могут быть созданы с его помощью: разделители, кнопки, загрузчики, формы, хлебные крошки, формы отзывов и комментариев, сложные модули ( начиная от всплывающих окон и до контекстных меню ).

Топ-пост этого месяца:  Урок 2. Основы работы с NodeJS

Foundation

На сегодняшний день Foundation является одним из самых популярных front-end фреймворков на планете. Этот адаптивный фреймворк предоставляет дизайнерские решения в распоряжение тех, кто хочет быстро создать сайт, шаблон электронного письма или веб/мобильное приложение без необходимости тратить время на приобретение профессиональных навыков. Foundation прост в освоении, и с помощью его дополнительной справочной литературы практически каждый может всего за несколько недель в совершенстве овладеть фреймворком.

Cascade

Cascade предлагает семантические и несемантические сеточные макеты, базовые шаблоны, табличные конструкции, элементы навигации, типографику и многое другое. Универсальный подход позволяет разработчикам создавать высокопроизводительные веб-страницы под старые и новые браузеры без необходимости беспокоиться о совместимости.

Многие разработчики нашли этот minimal CSS framework крайне полезным благодаря его модульному подходу к использованию конкретных функций в рамках проектов. Cascade позволяет выбрать только наиболее важные компоненты, необходимые для ваших проектов, что в свою очередь позволяет минимизировать размер и увеличить производительность. В этом он похож на Bootstrap , только Cascade предоставляет гораздо больше контроля над потоками.

Baseguide

Это минималистичный и компактный CSS3-фреймворк , построенный на базе SASS . Он собирает необходимые компоненты веб-дизайна в небольшую, но стабильную библиотеку. Все компоненты полностью адаптивны и масштабируемы. Вы можете управлять формами с помощью оригинального CSS .

Siimple

Минималистичный CSS-фреймворк , который служит основой для создания чистого плоского дизайна. Фактически фреймворк задается всего 250 строками кода, и его можно сжать в архив размером 6 Кб. Это полезно для тех, кто только делает первые шаги в веб-дизайне и нуждается во фреймворке, с которым можно просто экспериментировать.

Responsive Cat

Это CSS framework , который в качестве основы для построения синтаксиса использует Stylus . Полностью адаптивный и совместимый со всеми современными устройствами и браузерами.

Sculpt

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

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

Семантически чистый код является визитной карточкой Sculpt . Он включает в себя таблицу стилей, построенную на 25 пиксельной базовой линии типографики. Все заголовки, абзацы и списки создаются на ее основе.

Turret

Фреймворк для быстрой разработки сайтов, использующий для обработки современных функций CSS3 LESS . Сам фреймворк нормализует HTML , чтобы сделать разработку с помощью Turret приятной и доступной. Основными особенностями Turret являются адаптивный веб-дизайн, основанный на принципах минималистичного дизайна, HTML5 . А также общая семантическая разметка, которая помогает без особых сложностей преобразовать HTML5 в функциональный дизайн.

Concise CSS

Это компактный CSS grid framework , который предоставляет доступ к большому количеству функций разработки. Concise построен на основе принципов объектно-ориентированного CSS с сохранением семантики. Это обеспечивает простоту изучения фреймворка, а также высокий уровень гибкости. Фреймворк характеризуется простотой среды разработки, которая не требует добавления стилей. Также доступны дополнительные библиотеки, которые могут быть использованы в качестве компонентов для ваших проектов. При написании кода используется SASS .

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

Blueprint

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

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

UIkit

CSS в значительной степени ориентирован на построение веб-интерфейсов. UIKit — это модульный front-end CSS framework , который призван помочь дизайнерам в быстром создании простых веб-интерфейсов, красивых и гибких в настройке. Библиотека компонентов UIKit соответствует современному подходу к отображению и использованию популярных компонентов. UIKit предлагает более 30 модульных и выдвижных компонентов, которые могут быть объединены друг с другом. Компоненты разделены на различные секции в соответствии с назначением и функционалом.

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

Modest Grid

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

Schema

Schema использует модульный подход для обеспечения оптимального опыта front-end разработки. Это означает, что его задачей является помощь в создании сложных пользовательских интерфейсов.

Чтобы лучше понять, как Schema использует новейшие функции CSS3 для создания сложных веб-страниц, посетите страницу документации и ознакомьтесь со всеми возможностями CSS UI framework .

Стиль веб-дизайна Metro приобрел за последнее время немало поклонников. Metro UI сконцентрирован исключительно на разработке Metro-стиля Windows , который позволяет строить гибкие интерфейсы с использованием его лучших черт. Metro UI использует оригинальную спецификацию стилей Metro от Microsoft для создания таких компонентов, как сетки, макеты и многое другое. Он поставляется с более чем двадцатью компонентами, содержит более трехсот полезных иконок и построен на базе препроцессора LESS .

Responsive Grid System

Это последний CSS grid framework в нашем обзоре. С помощью него можно легко создавать и задавать стили сеточных адаптивных макетов сайтов. Чтобы процесс был еще проще, можно использовать встроенную функцию генератора сетки . Также доступна библиотека предустановленных шаблонов .

YAML удается остаться одним из лучших в течение более десяти лет, он до сих пор является одним из наиболее известных CSS-фреймворков в мире. YAML ( Yet Another Multicolumn Layout ) — это модульный, гибкий CSS-фреймворк для создания адаптивных сайтов. Он исповедует подход, базирующийся на независимом от дисплея дизайне, и предоставляет очень модули для гибких макетов. Это идеальная отправная точка для создания по-настоящему адаптивного дизайна.

YAML воплотил в себе все новейшие стандарты интернета. Он оптимизирован для быстрой HTML5- и CSS3-разработки . Написан с использованием SASS .

Выбор правильного CSS-фреймворка для вашего следующего проекта

CSS — это развивающийся язык, и оставаться в курсе последних тенденций довольно непросто. Фреймворки помогают преодолеть разрыв между необходимостью писать каждый отдельный запрос самостоятельно и использованием библиотеки, которая сделает это за вас. Как вы могли понять из этой статьи, CSS-фреймворки включают в себя ряд структур: типографика, сброс CSS , элементы интерфейса, глобальные стили и адаптивные сетки. Их можно использовать по отдельности или комбинировать друг с другом.

CSS framework незаменимы при решении задач обеспечения кроссбраузерной совместимости и адаптации под различные типы устройств. Благодаря им ваши сайты будут выглядеть одинаково хорошо на любых типах устройств. Большинство из представленных в этом обзоре CSS-фреймворков предоставляют возможность построения адаптивных шаблонов и позволяют работать над проектом нескольким разработчикам. Это в свою очередь позволяет сэкономить время и бюджет.

Данная публикация представляет собой перевод статьи « Top 21 Best Free CSS3 Frameworks for Web Development 2020 » , подготовленной дружной командой проекта Интернет-технологии.ру

5 лучших CSS-фреймворков для верстальщиков и веб-мастеров

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

  • Кроссбраузерность
  • Возможность создать корректный HTML макет даже не очень опытному специалисту
  • Единообразие кода
  • Увеличение скорости разработки
  • Привязанность к стилю CSS библиотеки
  • Избыточный код

Bootstrap

Один из самых известных CSS-фреймворков на сегодняшний день. Имеет в своем составе шаблоны для отрисовки кнопок, сайдбаров, навигационных панелей, форм и других элементов сайта. Включает себя JavaScript-расширения.
Основные инструменты bootstrap — шаблоны, @media, формы, навигация, алерты, типографика и конечно же, сетки. Bootstrap совместим со всеми основными современными браузерами, но в старых версиях браузеров могут быть проблемы. Поддерживает адаптивность. Использует языки Less и Sass.

Skeleton

Основан на JavaScript и CSS, используется для быстрого и безошибочного создания адаптивных сайтов которые корректно отображаются как на больших мониторах, так и на экранах маленьких гаджетов. Большой плюс Skeleton — его можно приспособить под любой дизайн. Сетка разметки содержит 12 колонок и имеет базовую ширину 960 пикселей. Совместим со всеми основными браузерами.

Полная свобода для разработчика без навязывания стилей. Предоставляет максимальную гибкость оформления. Имеет несколько вариантов сетки и позиционируется создателями как фреймворк для профессиональных CSS-разработчиков. Использует Less, поддерживает адаптивный дизайн.

Foundation


Распространенный CSS-фреймворк. Наряду с другими основными элементами включает в себя несколько HTML шаблонов с различным расположением блоков на странице. Имеет большой набор компонентов на JavaScript. Очень серьезный по своим возможностям и составу фреймворк. Использует Sass. Совместимость кода со всеми основными браузерами.

Semantic UI

Поддержка Firefox, Chrome, Safari, Internet Explorer, Android 4, Blackberry10. Содержит большое количество компонентов: иконки, изображения, надписи, меню и другие стандартные компоненты. Поддерживает последние версии HTML и CSS и имеет хорошую подборку скриптовых модулей и API. Использует Less. По применимости соревнуется с bootstrap. Есть вариант на русском языке, но неполный, а организаторы проекта предлагают помочь в переводе.

Каждой задаче свой инструмент, не стоит забивать гвозди микроскопом. Другое дело, если у вас большое количество разных задач, тогда подумайте об универсальном инструменте. Хорошим шагом будет попробовать фреймворк и понять «ваш» он или нет. Можно использовать представленные в фремворках скелеты кода как шпаргалку и просто брать оттуда решения и код.

Какими фреймворками пользуетесь? Расскажите в комментариях.

Верстка, фреймворки и не только в профессиональном курсе для будущих веб-мастеров «Веб-разработчик».

источник изображения http://mdex-nn.ru/

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

  • Кроссбраузерность
  • Возможность создать корректный HTML макет даже не очень опытному специалисту
  • Единообразие кода
  • Увеличение скорости разработки
  • Привязанность к стилю CSS библиотеки
  • Избыточный код

Bootstrap

Один из самых известных CSS-фреймворков на сегодняшний день. Имеет в своем составе шаблоны для отрисовки кнопок, сайдбаров, навигационных панелей, форм и других элементов сайта. Включает себя JavaScript-расширения.
Основные инструменты bootstrap — шаблоны, @media, формы, навигация, алерты, типографика и конечно же, сетки. Bootstrap совместим со всеми основными современными браузерами, но в старых версиях браузеров могут быть проблемы. Поддерживает адаптивность. Использует языки Less и Sass.

Skeleton

Основан на JavaScript и CSS, используется для быстрого и безошибочного создания адаптивных сайтов которые корректно отображаются как на больших мониторах, так и на экранах маленьких гаджетов. Большой плюс Skeleton — его можно приспособить под любой дизайн. Сетка разметки содержит 12 колонок и имеет базовую ширину 960 пикселей. Совместим со всеми основными браузерами.

Полная свобода для разработчика без навязывания стилей. Предоставляет максимальную гибкость оформления. Имеет несколько вариантов сетки и позиционируется создателями как фреймворк для профессиональных CSS-разработчиков. Использует Less, поддерживает адаптивный дизайн.

Foundation

Распространенный CSS-фреймворк. Наряду с другими основными элементами включает в себя несколько HTML шаблонов с различным расположением блоков на странице. Имеет большой набор компонентов на JavaScript. Очень серьезный по своим возможностям и составу фреймворк. Использует Sass. Совместимость кода со всеми основными браузерами.

Топ-пост этого месяца:  Показатели роста популярности мобильного шоппинга

Semantic UI

Поддержка Firefox, Chrome, Safari, Internet Explorer, Android 4, Blackberry10. Содержит большое количество компонентов: иконки, изображения, надписи, меню и другие стандартные компоненты. Поддерживает последние версии HTML и CSS и имеет хорошую подборку скриптовых модулей и API. Использует Less. По применимости соревнуется с bootstrap. Есть вариант на русском языке, но неполный, а организаторы проекта предлагают помочь в переводе.

Каждой задаче свой инструмент, не стоит забивать гвозди микроскопом. Другое дело, если у вас большое количество разных задач, тогда подумайте об универсальном инструменте. Хорошим шагом будет попробовать фреймворк и понять «ваш» он или нет. Можно использовать представленные в фремворках скелеты кода как шпаргалку и просто брать оттуда решения и код.

Какими фреймворками пользуетесь? Расскажите в комментариях.

Верстка, фреймворки и не только в профессиональном курсе для будущих веб-мастеров «Веб-разработчик».

Как работать с фреймворками?

Приветствую.
Пытаюсь изучить Yii2, но пока сложно, не понимаю как с ним работать и что вообще представляют из себя фремворки.

Как я понял фреймворк это определенный каркас + готовые методы, классы, готовые решения самых распространенных задач, вроде регистрации, авторизации, валидации, работы с бд, роутингом и т.д.

И мне нужно просто изучить как они реализованы в фреймворке и из этих готовых частей и собирать свой проект?

  • Вопрос задан более трёх лет назад
  • 3564 просмотра

Скажем так, что дока yii2 предназначена для новичка который уже знаком с php, mvc. Имея в знаниях только доку php, + тестовый проект реализованный с помощью mvc не составит труда начать разбираться в yii2. У меня по крайней мере так получилось.

Пробовать же изучить yii2 по документации не зная ничего в php, имхо, это абсурд. Дока yii2 это не учебник по php.

И мне нужно просто изучить как они реализованы в фреймворке и из этих готовых частей и собирать свой проект?

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

После этого, создать веб-приложение (проект) на этом фреймворке.

Открываем первую страницу в документации yii2.

Для разработки на Yii потребуется общее понимание ООП так как фреймворк полностью следует этой парадигме. Также стоит изучить такие современные возможности PHP как пространства имён и трейты.

Сюда же добавляем знания MVC паттерна.

готовые решения самых распространенных задач, вроде регистрации, авторизации, валидации, работы с бд, роутингом и т.д.

И мне нужно просто изучить как они реализованы в фреймворке и из этих готовых частей и собирать свой проект?

Мне кажется, что все советуют совсем не то, что нужно автору. Пытаться тупо читать документацию или сходу что-то делать,на мой взгляд — неправильно. Для начала нужно ответить на вопрос: какие они, PHP фреймворки? Ответ простой: практически все современные фреймворки реализуют парадигму MVC. Вот с этих трех букв и нужно начинать:

M — модели, работа с БД
V — шаблонизатор
C — контроллеры и маршрутизация

В современных фреймворках я бы в этот список еще добавил Dependency injection.

То есть если мы говорим о Symfony, то не стоит вязнуть в тысячетонной документации. Прочитайте про маршрутизацию, контроллеры, Twig и совсем немного по Доктрине. И вуаля — вы уже знаете, как работает костяк фреймворка.

А дальше уже — практика и там понемногу и остальные знания подтянутся.

Создание фреймворка. Виды и шаблоны. Урок 4

Просмотров: 13 566

29 октября 2020

AlexKrz Andr

Спасибо за уроки .Занимаюсь программированием недавно. Начинаю разбираться становится все понятно. Еще раз спасибо вам Андрей.

Просто Аккаунт

Идеальный видео урок

Igor Khmelevskyi

Хорошее видео, хорошее видео)

Эдуард Евдокимов

посмотрел 4 ролика, сложно понять общую картину как все устроено. Не подскажите доп. материалы для разъяснения?

Игорь Славинский

Одразу не зрозумів чому показує змінну, а ні. Просто = .

Николай Золотаревский

Вы что, я учусь. Мне интересно. Лайк поставил!

Геннадий Федюнин

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

Linux Mint

. мы не выводим вид и шаблон, но можем вывести данные, например, при отправке ajax-запроса .

и как интересно не выведется вид и шаблон — это же аякс, если уже выведен вид и шаблон до этого, то содержимое страницы просто не изменится во время его отправки и вид и шаблон останутся те же

или я чего-то не понимаю или у Вас во время аякса рефрешит страницу и если Вы заблокировали вывод то она будет без вида и шаблона

зачем тогда такой аякс

mugen31337

Я бы метод set() делал бы немного по другому. По сути, вы аргументом передаете данные с обязательным использованием сторонней функции, что есть не очень хорошо. Учитывая его обущающию направленность, лучше данный метод задать с параметрами переменной длинны, а в самом методе объединить получаемые массивы функцией array_merge() и передать полю vars. И тогда, мы просто при вызове метода set(), передаем ему сколько угодно параметров. А в виде и шаблоне просто обращаемся к переданным в метод переменным. Явность и удобность читаемости кода соблюдена.

Вот как будет выглядеть метод set():
public function set ( . $vars )
<
$this->vars = array_merge( . $vars );
>

И никаких компактов нам больше и не надо.

Ну и использование функции extract() сомнительно, в дальнейшем эту логику надо переписать.

Roman Semenov

НИ ОДНОГО. дизлайка к видео, на котором автор хотел остановить серию уроков!! )))) Ни одного, Карл! Таких доступных, с разжовыванием видео в сети — нету! Автору — респект к карме!

Юлия Бондарева

Адрей, спасибо Вам за Ваш труд.
Очень понятно излагаете мысли. Я обучаюсь только по Вашим урокам.
Вы преподаватель от Бога.

Сергей Беляков

Андрей, шикарный курс, вы записали его в 2020, а я его только начал проходить, жаль что не узнал про него раньше

Алексей Иванов

Да конечно, согласен с большинством людей, просматривающих данные видеоуроки от WebForMyself, также считаю, ни в коей мере не прекращайте Андрей ваши уроки. И большое Спасибо!

Astar Channel

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

Linux Mint

капец IDE сколько кода подсвечивает некорректного

Vladimir Dziubenko

На просторах нета лучшего препода я не встречал! well done!

Bahram Atahanov

Андрей спасибо за видео, все уроки понятные
, помогите пожалуйста у меня не подключается bootstrap

Константин Араканцев

Присоединяюсь к поблагодарившим! Замечательные уроки, Андрей)

Создание фреймворка. Виды и шаблоны. Урок 4

Просмотров: 13 566

29 октября 2020

AlexKrz Andr

Спасибо за уроки .Занимаюсь программированием недавно. Начинаю разбираться становится все понятно. Еще раз спасибо вам Андрей.

Просто Аккаунт

Идеальный видео урок

Igor Khmelevskyi

Хорошее видео, хорошее видео)

Эдуард Евдокимов

посмотрел 4 ролика, сложно понять общую картину как все устроено. Не подскажите доп. материалы для разъяснения?

Игорь Славинский

Одразу не зрозумів чому показує змінну, а ні. Просто = .

Николай Золотаревский

Вы что, я учусь. Мне интересно. Лайк поставил!

Геннадий Федюнин

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

Linux Mint


. мы не выводим вид и шаблон, но можем вывести данные, например, при отправке ajax-запроса .

и как интересно не выведется вид и шаблон — это же аякс, если уже выведен вид и шаблон до этого, то содержимое страницы просто не изменится во время его отправки и вид и шаблон останутся те же

или я чего-то не понимаю или у Вас во время аякса рефрешит страницу и если Вы заблокировали вывод то она будет без вида и шаблона

зачем тогда такой аякс

mugen31337

Я бы метод set() делал бы немного по другому. По сути, вы аргументом передаете данные с обязательным использованием сторонней функции, что есть не очень хорошо. Учитывая его обущающию направленность, лучше данный метод задать с параметрами переменной длинны, а в самом методе объединить получаемые массивы функцией array_merge() и передать полю vars. И тогда, мы просто при вызове метода set(), передаем ему сколько угодно параметров. А в виде и шаблоне просто обращаемся к переданным в метод переменным. Явность и удобность читаемости кода соблюдена.

Вот как будет выглядеть метод set():
public function set ( . $vars )
<
$this->vars = array_merge( . $vars );
>

И никаких компактов нам больше и не надо.

Ну и использование функции extract() сомнительно, в дальнейшем эту логику надо переписать.

Roman Semenov

НИ ОДНОГО. дизлайка к видео, на котором автор хотел остановить серию уроков!! )))) Ни одного, Карл! Таких доступных, с разжовыванием видео в сети — нету! Автору — респект к карме!

Юлия Бондарева

Адрей, спасибо Вам за Ваш труд.
Очень понятно излагаете мысли. Я обучаюсь только по Вашим урокам.
Вы преподаватель от Бога.

Сергей Беляков

Андрей, шикарный курс, вы записали его в 2020, а я его только начал проходить, жаль что не узнал про него раньше

Алексей Иванов

Да конечно, согласен с большинством людей, просматривающих данные видеоуроки от WebForMyself, также считаю, ни в коей мере не прекращайте Андрей ваши уроки. И большое Спасибо!

Astar Channel

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

Linux Mint

капец IDE сколько кода подсвечивает некорректного

Vladimir Dziubenko

На просторах нета лучшего препода я не встречал! well done!

Bahram Atahanov

Андрей спасибо за видео, все уроки понятные
, помогите пожалуйста у меня не подключается bootstrap

Константин Араканцев

Присоединяюсь к поблагодарившим! Замечательные уроки, Андрей)

Создание Собственного Фреймворка. Шаблон Реестр. Урок 10. Webformyself 32:45 HD

15.02.2020 13:18 2020-02-15T10:18:56.000Z

Описание:

Премиум уроки по созданию сайта:
https://webformyself.com/category/premium/

Продолжим создание собственного PHP фреймворка. По итогу мы должны получить вполне функциональное решение, а заодно познакомиться с принципами работы современных PHP фреймворков. В данном уроке мы познакомимся с шаблоном проектирования Registry (Реестр). Благодаря данному паттерну мы сможем создать необходимые объекты на этапе инициализации приложения и в любой момент получить доступ к ним.

В видео версии урока вы найдете ответы на такие вопросы:

Что такое шаблоны проектирования?
Принцип работы паттерна Registry (Реестр).
Как написать базовую реализацию паттерна Реестр?

Создание фреймворка. Виды и шаблоны. Урок 4

WebForMySelf 732 СКАЧАТЬ

Премиум уроки по созданию сайта:
https://webformyself.com/category/premium/

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

В видео версии урока вы найдете ответы на такие вопросы:

• В чем разница между шаблонами и видами?
• Как реализовать автоматическое подключение шаблона и вида?
• Как изменить подключаемые по умолчанию шаблон и вид?
• Как отменить подключение шаблона и вида?
• Как передать данные из контроллера в вид и шаблон?

Создание фреймворка. Виды и шаблоны. Урок 4 —

Создание фреймворка. Виды и шаблоны. Урок 4

Комментарии

Спасибо за уроки .Занимаюсь программированием недавно. Начинаю разбираться становится все понятно. Еще раз спасибо вам Андрей.

Идеальный видео урок

Хорошее видео, хорошее видео)

посмотрел 4 ролика, сложно понять общую картину как все устроено. Не подскажите доп. материалы для разъяснения?

Одразу не зрозумів чому показує змінну, а ні. Просто = .

Вы что, я учусь. Мне интересно. Лайк поставил!

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

. мы не выводим вид и шаблон, но можем вывести данные, например, при отправке ajax-запроса . и как интересно не выведется вид и шаблон — это же аякс, если уже выведен вид и шаблон до этого, то содержимое страницы просто не изменится во время его отправки и вид и шаблон останутся те же или я чего-то не понимаю или у Вас во время аякса рефрешит страницу и если Вы заблокировали вывод то она будет без вида и шаблона зачем тогда такой аякс

Я бы метод set() делал бы немного по другому. По сути, вы аргументом передаете данные с обязательным использованием сторонней функции, что есть не очень хорошо. Учитывая его обущающию направленность, лучше данный метод задать с параметрами переменной длинны, а в самом методе объединить получаемые массивы функцией array_merge() и передать полю vars. И тогда, мы просто при вызове метода set(), передаем ему сколько угодно параметров. А в виде и шаблоне просто обращаемся к переданным в метод переменным. Явность и удобность читаемости кода соблюдена. Вот как будет выглядеть метод set(): public function set ( . $vars ) < $this->vars = array_merge( . $vars ); > И никаких компактов нам больше и не надо. Ну и использование функции extract() сомнительно, в дальнейшем эту логику надо переписать.

Топ-пост этого месяца:  Totalcoin — удобный обменник и криптовалютный-кошелёк

Удивляюсь, почему до сих пор никто, кроме меня, не лайкнул Ваш пост. Прекрасно работает и гораздо лучше выглядит, чем вариант, предложенный автором! Спасибо! Хотелось бы подсказку, как именно можно переписать логику без использования «extract»?

НИ ОДНОГО. дизлайка к видео, на котором автор хотел остановить серию уроков!! )))) Ни одного, Карл! Таких доступных, с разжовыванием видео в сети — нету! Автору — респект к карме!

Адрей, спасибо Вам за Ваш труд. Очень понятно излагаете мысли. Я обучаюсь только по Вашим урокам. Вы преподаватель от Бога.

Спасибо Вам за теплые слова!

Андрей, шикарный курс, вы записали его в 2020, а я его только начал проходить, жаль что не узнал про него раньше

Да конечно, согласен с большинством людей, просматривающих данные видеоуроки от WebForMyself, также считаю, ни в коей мере не прекращайте Андрей ваши уроки. И большое Спасибо!

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

Спасибо за теплые слова! Рады стараться!

капец IDE сколько кода подсвечивает некорректного

На просторах нета лучшего препода я не встречал! well done!

Здравствуйте, У вас идет подключение в виде Я делаю так же, только у меня не работает. Работает только если прописать В чем может быть проблема?

Поставь точку перед слешем

Андрей спасибо за видео, все уроки понятные , помогите пожалуйста у меня не подключается bootstrap

Борис Попов спасибо вам огромное!

Поставь точку перед слешем

Присоединяюсь к поблагодарившим! Замечательные уроки, Андрей)

Спасибо за уроки! Не останавливайтесь!

Отличный курс. Автору огромное спасибо за изложение материала

Падение лайков и просмотров с углубление в курс это нормально. Просто отсеиваются зеваки, а остаются люди, которые реально учатся!

Добрый день Андрей, Был бы очень благодарен если бы Вы могли показать несколько примеров работы с шаблонизатором Twig и возможность его интеграции в общий функционал разрабатываемого фреймворка.

Спасибо за уроки, доходчиво все! Не бросайте это дело!

Спасибо за теплые слова!

Спасибо большое за ваш урок! Очень помогли.

Доброго времени! Андрей, нужна помощь специалиста, Делаю по вашему уроку и столкнулся с проблемой WWW выдает ошибку : Fatal error: Uncaught Error: Class ‘vendor\core\Router’ not found in /home/w/tron/wfb/public_html/public/index.php: 25 Stack trace: #0

thrown in /home/w/tron/wfb/public_html/public/index.php on line 25 ————- Перехожу на index.php: 25 Stack Router::add (‘^page/ (?P [a-z-]+) / (?P [a-z-]+) $’, [‘controller’=>’Page’]); Пожалуйста подскажите в чем тут может быть проблема? Заранее всем спасибо

Доброго времени! Андрей смотрим Вас с огромным удовольствием так же считаем что начатое должно быть доведено до победного! Надеемся что ваши подписчики , впрочем как и я , будем вам благодарны за полный формат урока по фреймворку ! Заранее благодарим Вас и ждем продолжения!

Вроде все делаю по мануалу, но не хочет нормально подключаться бутстрап вот скрин — joxi.ru/krDxw8duEoPVkr Но в консоле — joxi.ru/1A5WVyjhnRq8jm Что не так с путями?

Привет Роман, не решил проблему? У меня тоже такая проблема, не подключается bootstrap,

очень классная подача материала, огромное спасибо лектору

В связке с Nginx не видит CSS и JS, а остальное работает. В Apache всё работает и подгружается. Видимо где-то нужно прописывать папку public или Nginx`ом перенаправлять на public/index.php.

Народ, у кого это работает на OpenServer’е в режиме php+apache+nginx?

Из всего, что мне удалось видеть на просторах интернета — это самое толковое обьяснение. Без заумных слов понятно человеку который слово php в первые узнал в 45 лет.Больше всего мне нравится, что обьясняется логика работы всего скрипта — показывается что и как с чем взаимодействует для меня это было самое не понятное пока не посмотрел видео разные Андрея. А как работает та или иная функци можно прочитать и в справочнике. Спасибо большое Андрей продолжайте свои видео уроки на разные темы

Лучшие уроки что я видел! Очень интересно! Не в коем случае не прекращайте)) Мне тут диплом надо делать по основной специальности, скоро сдавать, а я от ваших уроков оторваться не могу! Данные уроки довольно сильно подстёгивают меня на покупку какого либо вашего курса)) и я это сделаю когда достигну определённой планки))

Добрый день, Андрей, очень хорошие уроки! У меня к вам два вопроса насчет рендеринга: 1) В методе View::render если $this->layout === false, тогда в любом случае у вас выполнится кусок кода с подключением вида, который нигде не отобразится.. Может вы в последующих уроках это уже изменили, но все таки решил спросить, как быть с этим? 2) Как быть, если надо отобразить вид без шаблона? Есть какое-то решение? Спасибо!

Мне очень нравится! Спасибо автору за такой детальный подход!

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

Андрей, не прекращайте, ваш материал очень полезный и интересный!

Здравствуйте, Андрей. Я не могу в этом уроке подключить main.css у меня background не меняет цвета, а так все работает.

ребят, не подключаться стили и скрипты, что делать??

С Апачем работает. Видимо связка Апач + Ngnix стоит.

плюсанул, но последние 3 минуты убили весь урок ))) массив массивного массива из массива в массив

Я бы не делал разрастание контроллера таким путем. Лучше создать объект View и уже делать все это через него. То есть задавать шаблон, параметры. $this->view->set([‘name’ => ‘Андрей’]);

Круто! Но не совсем понятна последовательность создания обьектов и вызова методов начиная с метода dispatch, когда мы создаём обьект контроллера. В ООП у меня мало опыта и не совсем понимаю порядок наследования и отработку методов. Если будет время в хотя бы вскользь расскажите какие методы вызывают какие классы и всю эту цепочку.

Спасибо за уроки помогает мне в написании своего проекта в качестве экзамена ))

Как передать информацию из базы данных в шаблон один раз? У меня получается, что каждый раз приходится добавлять в каждый action и вид. С алиасами что делать? где он читается? с адресной строки или он в адресную строку из кода попадает.? С отключение шаблона не понятно. Когда отключается шаблон, то и вид отключается, потому что переменную $content с мы передаем в шаблон и вид становится частью шаблона.

Спасибо. Всё ясно. Было бы, конечно, интересно увидеть реализацию.

А, кажись понял) Если я верно понял, то слово алиас Вы услышали в уроке? Смотрите, сейчас мы используем адреса примерно следующего вида: site/product/10 (или site/product/view/10). Этот URL адресуется контроллеру Product экшену View с параметром 10 (ID товара). Однако многие вместо ID товара хотят видеть там его название, т.е. примерно так: site/product/iphone-6s. Вот это название (iphone-6s) и называют алиасом, который можно получить из адресной строки и по нему (а не по ID) уже доставать данные товара из БД. Алиасы мы не реализовывали, они реализуются уже на уровне создания сайта, а не на уровне разработки фреймворка. Если интересно, тогда могу выделить отдельный урок и показать примерную реализацию в дальнейшем.

Спасибо, Андрей. Всё понятно, кроме алиасов. Из адресной строки для работы скрипта берется название контроллера, экшена и, если есть, явные параметры. Мне непонятно какая функция алиаса? откуда он берется, для чего? В скрипте он нигде не упоминается и не используется.

Относительно передачи данных один раз. Для этого существует общий контроллер AppController, в который можно вынести общую для всех контроллеров логику. Про алиасы не понял, но все запросы, конечно же, берутся из адресной строки. Относительно отключения шаблона. Зачем Вам вид без шаблона? Шаблон, а с ним и вид нужно отключать только для асинхронных запросов (других вариантов я не вижу). Ну а для асинхронных запросов оформление не нужно, там нужны возвращаемые данные.

Лучший материал который я встречал!

А почему не используете require_once?

А просто require разве уже отменили?)) Если серьезно, то пока что все подключаемое гарантированно будет подключаться только единожды, поэтому без разницы что использовать пока что.

большое спасибо за уроки!

Андрей, добрый день. По поводу вашего вступительного слова к данному уроку: Величина энтузиазма обратно пропорциональна пониманию материала. Ничего удивительного нет в том, что по мере усложнения материала, какая-то часть аудитории «отваливается». Я понимаю, что такие бесплатные уроки — это привлечение внимания желающих научиться писать на php к платным курсам и делать «обиженные» заявления типа «мало лайков» и «мало просмотров» не совсем честно. Вы ведь сами прекрасно понимаете, что в любую спортивную секцию приходят записываться сотни мальчишек, уверенные в том, что по ним плачет олимпийское золото, но лишь процентов 10 из них преодолевает первые серьезные трудности и продолжают заниматься. Огромная к вам просьба — не забрасывайте данный курс.

Сергей, а Вам спасибо за отзыв 😉

Андрей, добрый день. Я прекрасно понимаю о чем вы говорите и, возможно, не совсем корректно прошелся по вашим словам. Я искренне благодарен вам за то, что вы предоставляете такие уроки, тратите на это время, силы, деньги и т.д.. По поводу ваших сомнений на счет того, все ли вы правильно делаете. Ну, я могу сказать только от себя — мне не всегда понятны скачки между страницами кода. То есть, иногда хочется видеть как вы «в прямом эфире» рисуете кружочки, квадратики, стрелки от одной геометрической фигуре ко второй. ))) (утрирую немного, но дальше поясню, что я имею в виду). Опять таки повторюсь, смотрят ваш курс люди с разной подготовкой и кто-то после второго урока понял, что рановато ему еще думать о фреймворке и перестал смотреть, а кто-то увидел, что все это ему уже знакомо и тоже отвалился, но те 60-70 человек из 190, которые остались, уверен, досмотрят курс до конца. Это как раз те люди, которым это нужно. Вернусь к кружочкам и квадратикам. Когда то я купил курс М.Русакова и понял, что смотрю на то, как человек просто пишет код. Не знаю, как можно чему-то обучиться просто созерцая чью-то работу. Потом мне попались в сети уроки Дмитрия Лаврика, который хоть и быстро чешет, и иногда и прыгает от темы к тебе, все же периодически показывает на кружочках и квадратиках саму схему и суть того, что он собирается через минуту делать. Знаете, такая подача лично для меня оказалась куда более понятной. Ну, не буду более разглагольствовать на эту тему, наверняка вы уже начитались «умных советов» от таких «знатоков» как я. Желаю вам удачи и спасибо вам за ваш труд.

>>делать «обиженные» заявления типа «мало лайков» и «мало просмотров» не совсем честно Здравствуйте, Сергей. Тут вопрос не в честности. Вопрос банально в интересе, энтузиазме. Мало кто хочет «писать в стол», большинство хочет, чтобы их творение увидело свет, хочет увидеть интерес от аудитории. если же интереса у аудитории нет, тогда интерес у автора также постепенно пропадает. Увидев неподдельный интерес к первому уроку и заметив, что он начал падать в следующих уроках, банально начинаешь думать, что делаешь что-то не так, что слишком сложно или неинтересно. Вот и вся причина. Я, к примеру, уже с меньшим энтузиазмом подошел к записи 5-7-го уроков. Так что это не вопрос «честности», это вопрос интереса — писать ради того, чтобы писать или писать для себя — мне уже давно перестало быть интересным, интересно писать и видеть, что это нужно и полезно не единицам, а хотя бы десяткам людей. Пока такой интерес будет — курс бросать не буду)

Андрэй, дзякуй за ўрокі, з іх я дастаў шмат карыснай інфармацыі, але мне здаецца што ўрокі злёгку зацягнутыя па часе.

Создание фреймворка. Виды и шаблоны

Здравствуйте,
У вас идет подключение в виде
Я делаю так же, только у меня не работает.
Работает только если прописать

В чем может быть проблема?

Доброго времени!
Андрей, нужна помощь специалиста,
Делаю по вашему уроку и столкнулся с проблемой
WWW выдает ошибку :
Fatal error: Uncaught Error: Class ‘vendor\core\Router’ not found in /home/w/tron/wfb/public_html/public/index.php: 25 Stack trace: #0

thrown in /home/w/tron/wfb/public_html/public/index.php on line 25
————-
Перехожу на index.php: 25 Stack
Router::add (‘^page/ (?P [a-z-]+) / (?P [a-z-]+) $’, [‘controller’=>’Page’]);

Пожалуйста подскажите в чем тут может быть проблема?
Заранее всем спасибо

Добавить комментарий