55 лучших вопросов и ответов на собеседовании MVC (PDF)
Вопросы и ответы на собеседовании MVC для первокурсников
1) Что такое модель-представление-контроллер?
MVC — это шаблон архитектуры программного обеспечения для разработки веб-приложений. Он обрабатывается тремя объектами: моделью, представлением и контроллером.
👉 Бесплатная загрузка PDF-файла: Вопросы и ответы для интервью MVC
2) Что представляет собой Модель-Представление-Контроллер в приложении MVC?
В модели MVC
- Модель– Он представляет домен данных приложения. Другими словами, бизнес-логика приложения содержится в модели и отвечает за поддержание данных.
- Посмотреть– Он представляет собой пользовательский интерфейс, с помощью которого общаются конечные пользователи. Короче говоря, вся логика пользовательского интерфейса содержится в View.
- Контроллер- Именно контроллер отвечает на действия пользователя. В зависимости от действий пользователя соответствующий контроллер реагирует внутри модели и выбирает представление для рендеринга, отображающее пользовательский интерфейс. Логика пользовательского ввода содержится в контроллере.
3) Назовите сборку, чтобы определить MVC.
Команда MVC-фреймворк определяется в сборке System.Web.Mvc.
4) Каковы различные типы возврата метода действия контроллера?
Вот различные типы возврата метода действия контроллера:
- Просмотреть результат
- JavaРезультат скрипта
- Результат перенаправления
- Результат JSON
- Результат контента
5) В чем разница между добавлением маршрутов в приложение веб-формы и приложение MVC?
Чтобы добавить маршруты в приложение веб-формы, мы используем метод MapPageRoute() класса RouteCollection, а для добавления маршрутов в приложение MVC мы используем метод MapRoute().
6) Каковы два способа добавления ограничений в маршрут?
Два метода добавления ограничений к маршруту:
- Используйте регулярные выражения
- Используйте объект, реализующий интерфейс IRouteConstraint.
7) Каковы преимущества MVC?
- MVC выделяет ваш проект в другой сегмент, и разработчикам становится легче работать над ним.
- Легко редактировать или изменять какую-либо часть вашего проекта, что позволяет снизить затраты на разработку и обслуживание проекта.
- MVC делает ваш проект более систематичным
- Он представляет собой четкое разделение между бизнес-логикой и логикой представления.
- Каждый объект MVC имеет разные обязанности.
- Разработка идет параллельно
- Простота управления и обслуживания
- Все классы и объекты независимы друг от друга
8) Что делают функции «beforeFilter()», «beforeRender» и «afterFilter» в контроллере?
- передФильтр(): Эта функция запускается перед каждым действием в контроллере. Это подходящее место для проверки наличия активного сеанса или разрешений пользователя.
- доРендер(): Эта функция вызывается после логики действий контроллера, но до визуализации представления. Эта функция используется нечасто, но может потребоваться, если вы вызываете render() вручную до завершения данного действия.
- послеФильтр(): Эта функция вызывается после каждого действия контроллера и после завершения рендеринга. Это последний запущенный метод контроллера.
9) Какова роль компонентов «Представление», «Абстракция» и «Управление» в MVC?
Вот роль компонентов «Представление», «Абстракция» и «Управление» в MVC:
- Презентация: Это визуальное представление определенной абстракции внутри приложения.
- Абстракция: Это функциональность бизнес-домена в приложении.
- Контроль: Это компонент, который обеспечивает согласованность между абстракцией внутри системы и ее представлением пользователю, а также взаимодействует с другими элементами управления внутри системы.
10) Каковы недостатки модели MVC?
Вот некоторые важные недостатки модели MVC:
- Выкройка модели немного сложна.
- Учитывается неэффективность доступа к данным.
- При современном пользовательском интерфейсе сложно использовать MVC.
- Для параллельной разработки вам нужно несколько программистов.
- Требуются многочисленные знания в области технологий.
11) Какова роль ActionFilters в MVC?
В MVC «ActionFilters» помогает вам выполнять логику во время выполнения действия MVC или во время его выполнения.
12) Каковы шаги реализации проекта MVC?
Этапы реализации проекта MVC включают в себя:
- Получите первый запрос на заявку
- Выполнить маршрутизацию
- Создайте обработчик запроса MVC
- Создать контроллер
- Выполнить контроллер
- Вызвать действие
- Результат выполнения
13) Что такое маршрутизация и три сегмента?
Маршрутизация помогает вам определить структуру URL-адреса и сопоставить URL-адрес с помощью контроллера.
Для маршрутизации важны три сегмента:
- имя контроллера
- ИмяМетодаДействия
- Параметр
14) Как осуществляется маршрутизация в шаблоне MVC?
Существует группа маршрутов, называемая RouteCollection, которая состоит из зарегистрированных в приложении маршрутов. Метод RegisterRoutes записывает маршруты в эту коллекцию. Маршрут определяет шаблон URL-адреса и обработчик, который будет использоваться, если запрос соответствует шаблону.
Первый параметр метода MapRoute — это имя маршрута. Вторым параметром будет шаблон, которому соответствует URL-адрес. Третий параметр может быть значениями по умолчанию для заполнителей, если они не определены.
15) Как можно переходить от одного представления к другому с помощью гиперссылки?
Используя метод «ActionLink», как показано в приведенном ниже коде. Приведенный ниже код создаст простой URL-адрес, который поможет перейти к контроллеру «Home» и вызвать действие «GotoHome».
Свернуть/копировать код
<%= Html.ActionLink("Home", "Gotohome") %>
Вопросы и ответы на собеседовании MVC для опытных
16) Как поддерживаются сессии в MVC?
Сессии могут поддерживаться в MVC тремя способами: tempdata, viewdata и viewbag.
17) В чем разница между временными данными, просмотром данных и просмотром сумки?
- Данные о температуре: Это помогает сохранять данные при переходе от одного контроллера к другому.
- Просмотр данных: Это помогает сохранять данные при переходе от контроллера к просмотру.
- Посмотреть сумку: Это динамическая оболочка для данных представления.
18) Что такое частичное представление в MVC?
Частичное представление в MVC отображает часть содержимого представления. Это полезно для уменьшения дублирования кода. Проще говоря, частичное представление позволяет отображать представление внутри родительского представления.
19) Как реализовать Ajax в MVC?
В MVC Ajax можно реализовать двумя способами.
- Аякс-библиотеки
- JQuery
20) В чем разница между «ActionResult» и «ViewResult»?
«ActionResult» — это абстрактный класс, а «ViewResult» — производный от класса «AbstractResult». «ActionResult» имеет ряд производных классов, таких как «JsonResult», «FileStreamResult» и «ViewResult».
«ActionResult» лучше всего подходит, если вы динамически создаете различные типы представлений.
21) Как отправить результат обратно в формате JSON в MVC?
Чтобы отправить результат обратно в формате JSON в MVC, вы можете использовать класс «JSONRESULT».
22) В чем разница между просмотром и частичным просмотром?
Вот разница между просмотром и частичным просмотром
Посмотреть | Частичный вид |
---|---|
Он содержит страницу макета | Он не содержит страницы макета |
Перед визуализацией любого представления отображается стартовая страница представления. | Частичное представление не проверяет наличие viewstart.cshtml. Мы не можем разместить общий код для частичного представления на странице viewStart.cshtml.page. |
Представление может иметь теги разметки, такие как body, html, head, title, мета и т. д. | Частичное представление разработано специально для рендеринга внутри представления, и именно поэтому оно не содержит никакой разметки. |
Просмотр не является легким по сравнению с частичным просмотром. | Мы можем передать обычное представление методу RenderPartial. |
23) Каковы типы результатов в MVC?
В MVC существует двенадцать типов результатов, где класс ActionResult является основным классом, а 11 — их подтипами:
- ПосмотретьРезультат
- Партиалвиеврезультат
- Пустой результат
- Результат перенаправления
- Редиректтороутересулт
- JsonResult
- JavaСкриптРезультат
- КонтентРезультат
- филеконтентрезультат
- FileStreamResult
- FilePathResult
24) В чем важность NonActionAttribute?
Все общедоступные методы класса контроллера рассматриваются как метод действия. Если вы хотите запретить использование этого метода по умолчанию, вам необходимо назначить общедоступный метод с NonActionAttribute.
25) Для чего используется маршрут по умолчанию {resource}.axd/{*pathinfo}?
Маршрут по умолчанию предотвращает передачу контроллеру запросов к файлу веб-ресурса, например Webresource.axd или ScriptResource.axd.
26) Каков порядок выполнения фильтров, если реализовано несколько фильтров?
Порядок фильтра будет таким:
- Фильтры авторизации
- Фильтры действий
- Фильтры ответов
- Фильтры исключений
27) Какие фильтры ASP.NET выполняются в итоге?
В конце выполняются «Фильтры исключений».
28) Какие расширения файлов у Razor Views?
Для бритвенных представлений расширения файлов следующие:
- .cshtml: если C# является языком программирования
- .vbhtml: если VB — язык программирования
29) Каковы два способа добавления ограничений в маршрут?
Два метода добавления ограничений к маршруту:
- Использование регулярных выражений
- Использование объекта, реализующего интерфейс IRouteConstraint.
30) В каких двух случаях маршрутизация не реализована или не требуется?
Два случая, когда маршрутизация не требуется:
- Когда найден физический файл, соответствующий шаблону URL-адреса.
- Когда маршрутизация отключена для шаблона URL-адреса
Вопросы для собеседования по MVC для 5-летнего опыта
31) Каковы особенности MVC?
Вот особенности MVC:
- Простая и беспроблемная проверка. Легко тестируемая, расширяемая и подключаемая среда.
- Предлагает полный контроль над вашим HTML, а также над вашими URL-адресами.
- Использует существующие функции, предоставляемые ASP.NET, JSP, Django и т. д.
- Четкое разделение логики: Модель, Представление, Контроллер. Разделение задач приложения с помощью бизнес-логики, логики Ul и логики ввода.
- URL-маршрутизация для SEO-дружественных URL-адресов. Мощное сопоставление URL-адресов для понятных и доступных для поиска URL-адресов.
- Поддержка разработки через тестирование (TDD).
32) Каков реальный пример MVC?
Вот реальный пример MVC:
- Предположим, вы идете в ресторан. Вам не придется идти на кухню и готовить еду, которую вы наверняка сможете сделать дома. Вместо этого вы просто идете туда и ждете, пока подойдет официант.
- Теперь к вам подходит официант, а вы просто заказываете еду. Официант не знает, кто вы и что вы хотите, он просто записал детали вашего заказа на еду.
- Затем официант переходит на кухню. На кухне официант не готовит вам еду.
- Повар готовит вам еду. Официанту выдается ваш заказ и номер вашего стола.
- Затем повар готовит для вас еду. Он использует ингредиенты для приготовления еды. Предположим, вы заказали сэндвич с овощами. Затем ему нужен хлеб, помидоры, картофель, перец, лук, кусочки сыра и т. д., которые можно взять из холодильника.
- Наконец повар передает еду официанту. Теперь задача официанта — перенести эту еду за пределы кухни.
- Теперь официант знает, какое блюдо вы заказали и как оно подается.
В этом случае,
View= You Waiter= Controller Cook= Model Refrigerator= Data
33) Чем отличаются 3-х уровневые Archiтектура и MVC Archiтекстура?
Вот разница между 3-уровневым Archiтектура и MVC Archiтекстура:
Параметр | 3-Tier Archiтекстура | MVC Archiтекстура |
---|---|---|
Коммуникация | Этот тип архитектуры никогда не взаимодействует напрямую с уровнем данных. | Все уровни взаимодействуют напрямую, используя топологию треугольника. |
Применение | Трехуровневый: широко используется в веб-приложениях, где клиент, уровни данных и промежуточное программное обеспечение работают на физически отдельных платформах. | Обычно используется в приложениях, которые работают на одной графической рабочей станции. |
34) Как можно использовать архитектуру MVC в JSP?
В следующем примере показано использование архитектуры MVC в JSP:
- Мы берем пример формы с двумя переменными: «электронная почта» и «пароль», которая является нашим слоем представления.
- Как только пользователь вводит адрес электронной почты и пароль и нажимает кнопку «Отправить», действие передается в mvc_servlet, куда передаются адрес электронной почты и пароль.
- Этот mvc_servlet является уровнем контроллера. Здесь, в mvc_servlet, запрос отправляется объекту bean-компонента, который действует как уровень модели.
- Значения электронной почты и пароля устанавливаются в компонент и сохраняются для дальнейших целей.
- Из компонента извлекается значение и отображается на уровне представления.
Mvc_example.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>MVC Guru Example</title> </head> <body> <form action="Mvc_servlet" method="POST"> Email: <input type="text" name="email"> <br /> Password: <input type="text" name="password" /> <input type="submit" value="Submit" /> </form> </body> </html>
Mvc_servlet.java
package demotest; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class Mvc_servlet */ public class Mvc_servlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public Mvc_servlet() { super(); // TODO Auto-generated constructor stub } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub String email=request.getParameter("email"); String password=request.getParameter("password"); TestBean testobj = new TestBean(); testobj.setEmail(email); testobj.setPassword(password); request.setAttribute("gurubean",testobj); RequestDispatcher rd=request.getRequestDispatcher("mvc_success.jsp"); rd.forward(request, response); } }
TestBean.java
package demotest; import java.io.Serializable; public class TestBean implements Serializable{ public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } private String email="null"; private String password="null"; }
Mvc_success.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@page import="demotest.TestBean"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Guru Success</title> </head> <body> <% TestBean testguru=(TestBean)request.getAttribute("gurubean"); out.print("Welcome, "+testguru.getEmail()); %> </body> </html>
35) Как MVC работает в Spring?
Вот как MVC работает в Spring:
- DispatcherServlet получает запрос.
- После этого DispatcherServlet связывается с HandlerMapping. Он также отзывает контроллер, связанный с этим конкретным запросом.
- Контроллер обрабатывает этот запрос, вызывая методы службы, а объект ModelAndView возвращается DispatcherServlet.
- Имя представления отправляется в ViewResolver, чтобы найти фактическое представление для вызова.
- После этого DispatcherServlet передается в View для визуализации результата.
- Используя данные модели, представление визуализирует и отправляет результат обратно пользователю.
36) Какие важные моменты следует помнить при создании приложения MVC?
Вот несколько важных моментов, которые следует помнить при создании приложения MVC:
- Вам необходимо помнить, что ASP.net MVC не является заменой приложений на основе веб-форм ASP.Net.
- Подход к разработке приложений MVC должен определяться на основе требований приложения и функций, предоставляемых ASP.net MVC, чтобы удовлетворить конкретные потребности разработки.
- Процесс разработки приложений с использованием ASP.NET MVC более сложен по сравнению с приложениями на основе веб-форм.
- Удобство сопровождения приложения всегда выше при разделении задач приложения.
37) В чем разница между веб-формами и MVC?
Вот разница между веб-формами и MVC:
параметры | веб-формы | MVC |
---|---|---|
Модель | Веб-формы Asp.Net следуют модели разработки, управляемой событиями. | Asp.Net MVC использует модель разработки на основе шаблонов MVC. |
Используется с | Существует с 2002 года | Впервые он был выпущен в 2009 году. |
Поддержка состояния просмотра | Веб-формы Asp.Net поддерживают состояние просмотра для управления состоянием на стороне клиента. | .Net MVC не поддерживает состояние просмотра. |
Тип URL | Веб-формы Asp.Net имеют URL-адреса на основе файлов. Это означает, что имя файла существует в URL-адресах, и они должны существовать физически. | Asp.Net MVC имеет URL-адреса на основе маршрутов, что означает, что URL-адреса перенаправляются на контроллеры и действия. |
Синтаксис | Asp.Net MVC следует синтаксису веб-форм. | Asp.Net MVC следует настраиваемому синтаксису. |
Тип просмотра | Представления веб-форм тесно связаны с кодом (ASPX-CS), то есть с логикой. | Представления и логика MVC всегда хранятся отдельно. |
Постоянный внешний вид и ощущения | Он имеет главные страницы для единообразного вида. | Asp.Net MVC имеет макеты для единообразного вида. |
Возможность повторного использования кода | Веб-формы предлагают пользовательские элементы управления для повторного использования кода. | Asp.Net MVC предлагает частичные представления для повторного использования кода. |
Контроль HTML | Less контроль над отображаемым HTML. | Полный контроль над HTML |
Государственное управление | Автоматическое управление состоянием органов управления. | Ручное управление состоянием. |
Поддержка TDD | Требуется слабый или специальный TDD. | Поощряет и включает TDD! |
38) Как можно что-то отобразить в CodeIgniter?
Вот код для отображения чего-либо в CodeIgniter:
<?=$title?> As opposed to <?php echo $title; ?> Control structures are usually written as follows <?php foreach ($customers as $customer): ?> <li> <p><?=$customer->first_name?><p> </li> <?php endforeach; ?>
39) Напишите код для демонстрации модели, представления и контроллера в CodeIgniter.
Вот код для демонстрации модели, представления и контроллера в CodeIgniter:
Откройте файл контроллера Welcome.php, расположенный в приложении/контроллерах:
<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Welcome extends CI_Controller { public function index() { $this->load->view('welcome_message'); } }
Обновите индекс следующим образом:
public function index() { $this->load->model('customers_model'); $data['customer'] = $this->customers_model->get_customer(3); $this->load->view('welcome_message',$data); }
Напишите следующий код в файле customer_model.php в файле application/models.
<?php class Customers_model extends CI_Model { public function get_customer($id) { $data['id'] = 3; $data['first_name'] = 'John'; $data['last_name'] = 'Doe'; $data['address'] = 'Kingstone'; return $data; } }
Откройте файл Welcome_message.php, расположенный в
application/views/welcome_message.php
Замените код на следующий
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>CodeIgniter MVC Basics</title> </head> <body> <h3>Customer Details Card</h3> <p>Customer ID : <strong><?=$customer['id']?></strong></p> <p>First Name : <strong><?=$customer['first_name']?></strong></p> <p>Last Name : <strong><?=$customer['last_name']?></strong></p> <p>Address : <strong><?=$customer['address']?></strong></p> </body> </html>
40) Можете ли вы создать веб-приложение, используя веб-формы и MVC?
Да. Чтобы создать гибридное приложение, вам необходимо включить приведенные ниже ссылки на сборки MVC в приложение веб-форм.
System.Web.Mvc System.Web.Razor System.ComponentModel.DataAnnotations
41) Как назначить псевдоним для действия веб-API ASP.NET?
Мы можем указать псевдоним для действия веб-API, как и в случае с ASP.NET MVC, используя атрибут «ActionName» следующим образом:
[HttpPost] [ActionName("SaveStudentInfo")] public void UpdateStudent(Student aStudent) { StudentRepository.AddStudent(aStudent); }
42) В чем основная разница между MVC и WebAPI?
Вот основное различие между MVC и WebAPI:
Фреймворк MVC используется для разработки приложений с пользовательским интерфейсом. Для этого представления можно использовать для создания пользовательского интерфейса.
WebAPI используется для разработки HTTP-сервисов. Другие приложения также можно называть методами WebAPI для получения этих данных.
43) Как гарантировать, что веб-API возвращает только данные JSON?
Чтобы веб-API сериализовал возвращаемый объект в формат JSON и возвращал только данные JSON. Для этого вам следует добавить следующий код в класс WebApiConfig.cs в любом проекте веб-API MVC:
//JsonFormatter //MediaTypeHeaderValue Config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json")); 1 2 3 //JsonFormatter //MediaTypeHeaderValue Config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"))
44) В чем разница между MVVM и MVC?
Вот важные различия между MVVM и MVC:
MVC | МВВМ |
---|---|
Контроллер — это точка входа в приложение. | Представление является точкой входа в приложение. |
Отношения «один ко многим» между контроллером и представлением. | Отношения «один ко многим» между представлением и моделью представления. |
Представление не имеет ссылки на контроллер | View имеет ссылки на View-Model. |
MVC — старая модель | MVVM — относительно новая модель. |
Эту модель сложно читать, изменять, тестировать и повторно использовать. | Процесс отладки будет сложным, если у нас есть сложные привязки данных. |
Компонент модели MVC можно тестировать отдельно от пользователя. | Легко проводить отдельное модульное тестирование, а код управляется событиями. |
45) Что такое MVC в AngularJS?
Angular.js следует архитектуре MVC, схема структуры MVC показана ниже.
- Контроллер представляет уровень, содержащий бизнес-логику. Пользовательские события запускают функции, которые хранятся внутри вашего контроллера. Пользовательские события являются частью контроллера.
- Представления используются для представления уровня представления, который предоставляется конечным пользователям.
- Модели используются для представления ваших данных. Данные в вашей модели могут быть такими же простыми, как примитивные объявления. Например, если вы поддерживаете студенческое приложение, ваша модель данных может содержать только идентификатор студента и имя. Или это также может быть сложно из-за наличия структурированной модели данных. Если вы поддерживаете приложение для владения автомобилем, у вас могут быть структуры для определения самого транспортного средства с точки зрения объема двигателя, вместимости и т. д.
46) Какова роль MVC в AngularJS?
Ниже приведено простое определение работы контроллера AngularJS.
- Основная ответственность контроллера — управлять данными, которые передаются в представление. Область видимости и представление имеют двустороннюю связь.
- Свойства представления могут вызывать «функции» в области видимости. Более того, события в представлении могут вызывать «методы» в области видимости. В приведенном ниже фрагменте кода приведен простой пример функции.
- Функция ($scope), которая определяется при определении контроллера, и внутренняя функция, которая используется для возврата конкатенации $scope.firstName и $scope.lastName.
- В AngularJS, когда вы определяете функцию как переменную, она называется методом.
- Данные таким образом передаются от контроллера к области, а затем данные передаются туда и обратно из области в представление.
- Область используется для предоставления модели представлению. Модель можно изменить с помощью методов, определенных в области действия, которые могут запускаться с помощью событий из представления. Мы можем определить двустороннюю привязку модели от области видимости к модели.
- В идеале контроллеры не следует использовать для управления DOM. Это должно быть сделано директивами, которые мы увидим далее.
- Лучше всего использовать контроллеры, основанные на функциональности. Например, если у вас есть форма для ввода и для этого вам нужен контроллер, создайте контроллер под названием «контроллер формы».
47) Как создать базовый контроллер в AngularJS.
Приведенный ниже фрагмент кода представляет собой простую HTML-страницу с заголовком «Регистрация событий» и ссылками на важные библиотеки, такие как Bootstrap, jquery и Angular.
- Мы добавляем ссылки на таблицы стилей начальной загрузки CSS, которые будут использоваться вместе с библиотеками начальной загрузки.
- Добавляем ссылки на библиотеки AngularJS. Итак, теперь все, что мы будем делать с angular.js, будет ссылаться на эту библиотеку.
- Мы добавляем ссылки на библиотеку начальной загрузки, чтобы сделать нашу веб-страницу более отзывчивой к определенным элементам управления.
- Мы добавили ссылки на библиотеки jquery, которые будут использоваться для манипуляций с DOM. Это необходимо для Angular, поскольку некоторые функции Angular зависят от этой библиотеки.
По умолчанию приведенный выше фрагмент кода будет присутствовать во всех наших примерах, чтобы мы могли показывать только конкретный код angularJS в последующих разделах.
Во-вторых, давайте посмотрим на наши файлы и файловую структуру, с которых мы собираемся начать наш курс:
- Сначала мы разделяем наши файлы на 2 папки, как это делается в любом обычном веб-приложении. У нас есть папка «CSS». Он будет содержать все наши файлы каскадных таблиц стилей, а затем у нас будет папка «lib», в которой будут храниться все наши файлы. JavaСценарий файлы.
- Файл bootstrap.css помещается в папку CSS и используется для улучшения внешнего вида нашего веб-сайта.
- angular.js — это наш основной файл, который был загружен с сайта angularJS и хранится в нашей папке lib.
- Файл app.js будет содержать наш код для контроллеров.
- Файл bootstrap.js используется в дополнение к файлу bootstrap.cs, чтобы добавить функциональность начальной загрузки в наше веб-приложение.
- Файл jquery будет использоваться для добавления на наш сайт функций манипулирования DOM.
Пример использования angular.js:
Здесь мы хотим просто отображать слова «AngularJS» как в текстовом формате, так и в текстовом поле при просмотре страницы в браузере.
<!DOCTYPE html> <html> <head> <meta chrset="UTF 8"> <link rel="stylesheet" href="css/bootstrap.css"/> </head> <body> <h3> Guru99 Global Event</h3> <script src="https://code.angularjs.org/1.6.9/angular.js"></script> <script src="lib/angular.js"></script> <script src="lib/bootstrap.js"></script> <script src="lib/jquery-1.11.3.min.js"></script> <div ng-app="DemoApp" ng-controller="DemoController"> Tutorial Name : <input type="text" ng-model="tutorialName"><br> This tutorial is {{tutorialName}} </div> <script> var app = angular.module('DemoApp',[]); app.controller('DemoController', function($scope){ $scope.tutorialName = "Angular JS"; }); </script> </body> </html>
48) Какая польза от ng-controller во внешних файлах в AngularJS
Выполните следующие шаги, чтобы использовать ng-controller во внешних файлах в AngularJS.
Шаг 1) В файл app.js добавьте следующий код для вашего контроллера.
angular.module('app',[]).controller('HelloWorldCtrl',function($scope) { $scope.message = "Hello World" });
Шаг 2) Теперь в файл Sample.html добавьте класс div, который будет содержать директиву ng-controller, а затем добавьте ссылку на переменную-член «message».
<!DOCTYPE html> <html ng-app="app"> <head> <meta chrset="UTF 8"> <title>Event Registration</title> <link rel="stylesheet" href="css/bootstrap.css"/> </head> <body> <h3> Guru99 Global Event</h3> <div class="container"> <div ng-controller="HelloWorldCtrl">{{message}}</div> </div> <script src="https://code.angularjs.org/1.6.9/angular.js"></script> <script src="lib/angular.js"></script> <script src="lib/bootstrap.js"></script> <script src="lib/jquery-1.11.3.min.js"></script> <script src="app.js"></script> </body> </html>
49) Написать код для определения методов в контроллере AngularJS?
Вот код для определения методов в контроллере AngularJS:
<!DOCTYPE html> <html> <head> <meta chrset="UTF 8"> <title>Event Registration</title> <link rel="stylesheet" href="css/bootstrap.css"/> </head> <body ng-app="DemoApp"> <h3> Guru99 Global Event</h3> <script src="https://code.angularjs.org/1.6.9/angular.js"></script> <script src="lib/angular.js"></script> <script src="lib/bootstrap.js"></script> <script src="lib/jquery-1.11.3.min.js"></script> <div ng-app="DemoApp" ng-controller="DemoController"> Tutorial Name :<input type="text" ng-model="tutorialName"><br> <br> This tutorial is {{tutorialName}} </div> <script> var app = angular.module('DemoApp', []); app.controller('DemoController', function($scope) { $scope.tutorialName = "Angular JS"; $scope.tName = function() { return $scope.tName; }; }); </script> </body> </html>
50) Напишите код с использованием ng-модели для отображения элемента управления многострочным вводом в AngularJS.
Вот код, использующий ng-model для отображения элемента управления многострочным вводом в AngularJS:
<!DOCTYPE html> <html> <head> <meta chrset="UTF 8"> <title>Event Registration</title> <link rel="stylesheet" href="css/bootstrap.css"/> </head> <body > <h3> Guru99 Global Event</h3> <script src="https://code.angularjs.org/1.6.9/angular.js"></script> <div ng-app="DemoApp" ng-controller="DemoCtrl"> <form> Topic Description:<br> <br> <textarea rows="4" cols="50" ng-model="pDescription"></textarea><br><br> </form> </div> <script> var app = angular.module('DemoApp',[]); app.controller('DemoCtrl', function($scope){ $scope.pDescription="This topic looks at how Angular JS works \nModels in Angular JS"}); </script> </body> </html>
51) Напишите код, демонстрирующий использование элементов ввода.
Вот пример кода с использованием элементов ввода AngulaJS:
<!DOCTYPE html> <html> <head> <meta chrset="UTF 8"> <title>Event Registration</title> <link rel="stylesheet" href="css/bootstrap.css"/> <script src="https://code.angularjs.org/1.6.9/angular.js"></script> </head> <body > <h3> Guru99 Global Event</h3> <div ng-app="DemoApp" ng-controller="DemoCtrl"> <form> Topic Description:<br> <br> Name : <input type="text" ng-model="pname"><br> Topic : <br> <input type="checkbox" ng-model="Topic.Controller">Controller<br> <input type="checkbox" ng-model="Topic.Models">Models </form> </div> <script> var app = angular.module('DemoApp',[]); app.controller('DemoCtrl', function($scope){ $scope.pname="Guru99"; $scope.Topic = { Controller:true, Models:false }; }); </script> </body> </html>
52) Как создать модель на PHP?
Вот код для создания модели на PHP:
<?php class Opinion_poll_model extends CI_Model { public function __construct() { $this->load->database(); } public function total_votes() { $query = $this->db->select('COUNT(choice) as choices_count')->get('js_libraries'); return $query->row()->choices_count; } public function get_results() { $libraries = array("", "JQuery", "MooTools", "YUI Library", "Glow"); $table_rows = ''; for ($i = 1; $i < 5; $i++) { $sql_stmt = "SELECT COUNT(choice) choices_count FROM js_libraries WHERE choice = $i;"; $result = $model-> select($sql_stmt); $table_rows .= "<tr><td>" . $ libraries [$i] . " Got:</td><td><b>" . $result[0] . "</b> votes</td></tr>"; } public function add_vote($choice) { $ts = date("Y-m-d H:i:s"); $data = array('choice' => $choice, 'ts' => $ts); $this->db->insert('js_libraries', $data); } } ?>
53) Зачем использовать PHP MVC Framework?
Вам следует использовать PHP MVC Framework, поскольку он упрощает работу со сложными технологиями за счет:
- Скрытие всех сложных деталей реализации
- Предоставление стандартных методов, которые мы можем использовать для создания наших приложений.
- Повышенная производительность разработчиков, поскольку базовая реализация таких действий, как подключение к базе данных, очистка пользовательского ввода и т. д., уже частично реализована.
- Соблюдение профессиональных стандартов кодирования
54) Какие популярные фреймворки PHP MVC?
Вот популярные фреймворки PHP MVC:
КодИгнитер: Это один из самых популярных фреймворков PHP MVC. Он легкий и требует короткого обучения. Он имеет богатый набор библиотек, которые помогают быстро создавать веб-сайты и приложения. Его также могут использовать пользователи с ограниченными знаниями в области ООП-программирования.
Кохана: Это контроллер представления иерархической модели HMVC, который представляет собой безопасную и легкую структуру. Он имеет богатый набор компонентов для быстрой разработки приложений.
ТортPHP: Он создан по образцу Ruby on Rails. Он известен такими концепциями, как шаблоны проектирования программного обеспечения, соглашение о конфигурации, ActiveRecord и т. д.
Зенд: Это мощная структура;
- Безопасный, надежный, быстрый и масштабируемый
- Поддерживает Web 2.0 и создание веб-сервисов.
Он включает API от таких поставщиков, как Amazon, Google, Flickr, Yahoo и т. д. Идеально подходит для разработки бизнес-приложений.
55) Как создавать представления в PHP?
Вот код для создания представлений в PHP:
opinion_poll_form.php <html> <head> <title> JavaScript Libraries - Opinion Poll </title> </head> <body> <h3>JavaScript Libraries - Opinion Poll</h3> <p><b>What is your favorite JavaScript Library? </b></p> <form method="POST" action="index.php"> <p> <input type="radio" name="vote" value="1" /> JQuery <br /> <input type="radio" name="vote" value="2" /> MooTools <br /> <input type="radio" name="vote" value="3" /> YUI Library <br /> <input type="radio" name="vote" value="4" /> Glow </p> <p> <input type="submit" name="submitbutton" value="OK" /> </p> </form> </body> </html>
Давайте теперь создадим страницу результатов results.php.
<html> <head> <title>JavaScript Libraries - Opinion Poll Results</title> </head> <body> <h3>JavaScript Libraries - Opinion Poll Results</h3> <p><b>What is your favorite JavaScript Library?</b></p> <p><b><?php echo $total_votes; ?></b> people have thus far taken part in this poll:</p> <p><table><tr><td> <?php print($rows); ?> </tr></td></table></p> <p><a href="#">Return to voting page</a></p> </body> </html>
Эти вопросы для собеседования также помогут вам в устной речи.