Django… ¿No es tu framework favorito? (especialmente si eres nuevo en el mundo de la programación)
¡Sí! Está…
¿Intentó aprender este marco y construir algunos proyectos?
Si la respuesta es Sí , aquí está la siguiente pregunta…
¿Entendió el flujo completo del proyecto?
De nuevo, si la respuesta es sí , aquí hay otra pregunta (no te enojes ahora…jaja…)
¿Puede articular los conceptos en sus propias palabras que ha aprendido de su proyecto?
Si la respuesta es nuevamente Sí , entonces felicitaciones, no necesita leer toneladas de artículos sobre las preguntas de la entrevista de Django… Solo necesita echar un vistazo a las preguntas y la respuesta aparecerá automáticamente en su mente.
Este marco es el marco más popular en las industrias y esta es la razón por la que la mayoría de las personas se lanzan a él (sin duda, el dinero es otro factor). Si eres un desarrollador experimentado, seguramente comprobarás el motivo de su popularidad y, para ello, comprobarás qué problemas puede resolver Django en una aplicación. ¿Por qué es mejor que otros marcos o por qué es bueno construir la aplicación en Django?
Si ya se ha esforzado en construir algunos proyectos y comprender el concepto de este marco, todo lo que necesita hacer es postularse para los trabajos correctos y enfrentar las entrevistas.
Ahora, llegando al título principal de este blog, discutiremos algunas preguntas de la entrevista de Django que puede encontrar en las entrevistas, pero antes de continuar, le recomendamos que lea detenidamente las líneas que figuran a continuación.
¡Una nota rápida!
Si usted es alguien que solo está buscando las preguntas de la entrevista y cree que leer estas preguntas y recordar la respuesta lo ayudará a despejar las rondas de la entrevista, entonces, amigo mío, esto no funcionará cuando se enfrente a las entrevistas.
Recuerde siempre que un entrevistador preferirá contratar a un candidato que pueda tener una exposición práctica y que pueda resolver los problemas en las aplicaciones de Django. Lo más probable es que no contraten a alguien que haya venido a la entrevista leyendo unas 20-30 preguntas de la entrevista de Django sin ninguna exposición práctica.
Leer solo las 30-40 preguntas de la entrevista (cualquier idioma o marco) y enfrentar la entrevista sin ninguna exposición práctica no funcionará en el desarrollo de software. Porque allí no te pedirán que escribas los trabajos para algunos exámenes teóricos.
Allí tendrá que construir el software real y, en este caso, no importa qué tipo de preguntas haga el entrevistador, su única intención sería verificar la capacidad del candidato sobre la comprensión del marco, sobre la comprensión de los conceptos, sobre la comprensión de cómo se conectan las cosas, sobre la comprensión del flujo completo del marco.
Puede leer la teoría, leer la pregunta y luego construir algunos proyectos, o puede construir algunos proyectos y luego leer la teoría y la pregunta de la entrevista. Pero aquí la idea es hacer las dos cosas… no te pierdas nada.
Ahora comencemos a discutir las preguntas de la entrevista…
También discutiremos qué tipo de respuesta está buscando un entrevistador o por qué hizo una pregunta específica.
Pregunta de la entrevista de Django
Cualesquiera que sean las preguntas que vamos a discutir aquí, no espere las mismas preguntas en cada entrevista. No todas las entrevistas van a ser iguales. Las preguntas pueden ser diferentes y dependen de la persona que está tomando su entrevista. Pero sí, estas son las más básicas y las preguntas más comunes, y hemos compilado la pregunta considerando la posición del desarrollador de Django de nivel junior.
Lo más probable es que estas preguntas se hagan en las entrevistas para verificar la capacidad del candidato para al menos una comprensión básica del marco. Antes de solicitar los trabajos, asegúrese de mencionar el proyecto en su cartera. Mencione las cosas que ha hecho en su proyecto utilizando este increíble marco. Qué características ha creado o qué problemas ha resuelto. Esto le dará una idea de cuán profundamente comprende este marco.
El entrevistador no quiere realizar una sesión de preguntas y respuestas. Él/ella tratará de construir una relación contigo y tratará de entenderte. Entonces, en caso de que el entrevistador pregunte sobre el proyecto o en lo que está trabajando actualmente, hable sin problemas e intente controlar la entrevista. Amplíe su respuesta y entre en detalles en lugar de simplemente dar la respuesta en sí o no.
No seas falso en las entrevistas. Establezca una relación con el entrevistador y trátelo como un miembro del equipo o un mentor que trabajará con usted en algún proyecto en el futuro. Cuando entras en los detalles del proyecto el entrevistador entiende que cosas ya las conoces. Simplemente limite la cantidad de preguntas para usted y el entrevistador no hará las 50 preguntas de su lista.
Si está atascado en alguna pregunta, no dé una respuesta incorrecta, solo informe a los entrevistadores si sabe algo sobre el proyecto. Puedes decir que “He hecho esto en mi proyecto, pero las cosas se están quedando en blanco. No recuerdo cuál era el comando exacto, pero creo que es algo así”. Ahora puedes tratar de elaborar esas preguntas. Está completamente bien para el entrevistador y no causará ninguna impresión negativa.
Empecemos con las preguntas ahora…
1. ¿Qué tan cómodo te sientes con Python?
Nota: El entrevistador está buscando algunos requisitos previos. Él/ella quiere saber tus habilidades con Python. ¿Qué tan familiarizado está con él y qué ha hecho con Python? No dedicará mucho tiempo a eso, pero obviamente, si eres un desarrollador de Django, necesitarás saberlo.
Respuesta: Hazle saber al entrevistador qué cursos has tomado, qué tipo de proyecto has construido, cuánto te has expandido en este idioma. Libros, y los demás recursos, etc.
2. ¿Qué es Django?
Nota: A partir de aquí, el entrevistador profundizará en los detalles e intentará comprender qué tan bien conoce Django. Por supuesto, esta pregunta también depende de qué tan bien haya explicado su proyecto Django mencionado en su cartera. Si el entrevistador tiene dudas sobre su conocimiento en Django, seguramente le hará esta pregunta.
Respuesta: “Django es un marco web basado en Python. Al igual que usamos ExpressJS o NodeJS para JavaScript y Laravel para PHP para construir la parte de back-end de la aplicación, Django es para Python con el mismo propósito”. No se limita a dar la misma respuesta, pero esta respuesta aclarará que sabe «qué son los marcos». Si menciona un par de marcos en su respuesta, el entrevistador entenderá que conoce el concepto de marcos, y no es necesario entrar en detalles sobre el concepto de marco.
3. ¿Qué puedes construir con Django?
Nota: Básicamente, el entrevistador espera la respuesta de que conoce las capacidades de Django. Entiendes para qué se usa Django. Por lo general, las personas dan el ejemplo de que Django se puede usar para crear redes sociales, sitios web de comercio electrónico, pero si desea dar una buena respuesta, mencione los nombres de algunas empresas.
Respuesta: «Las capacidades de Django son cualquier cosa y empresas como Udemy, Pinterest, Instagram, Dropbox las usan». El entrevistador entenderá que conoces Django y entiendes que es capaz de mucho. Estás entendiendo lo que se hace y lo que se puede hacer. También puede mencionar las API y cómo las API son útiles para crear algunas buenas aplicaciones.
Explicación adecuada de las preguntas no. 4 y 5 es muy importante. Si no puede explicar qué es Django y qué es capaz de hacer, entonces el entrevistador estará preocupado.
A partir de aquí, el entrevistador puede entrar en detalles y hará rápidamente algunas preguntas para asegurarse de que ha trabajado con ello. No acaba de escuchar sobre este marco, o no ha realizado ningún tipo de aprendizaje de memoria. El entrevistador juzgará bastante a la ligera aquí porque nadie recuerda todos y cada uno de los comandos o el código exacto en desarrollo. La mayoría de la gente simplemente busca en Google las cosas y resuelve el problema. Pero debes recordar los comandos más básicos o las cosas más básicas en Django.
4. ¿Cuál es la diferencia entre un Proyecto y una Aplicación?
Nota: incluye ejemplos en tu respuesta para diferenciar entre ambos.
Respuesta: “ Un proyecto es como un entorno general. Es la base de su sitio web y una aplicación es como un componente de ese sitio web que contiene la lógica del proyecto. El proyecto es como la configuración de su sitio web y la aplicación es el componente de su proyecto que se crea para hacer algo específico en su aplicación.
Un proyecto se compone de muchas aplicaciones, por lo que un solo proyecto puede tener n cantidad de aplicaciones y una sola aplicación puede estar en varios proyectos”. Aquí puede dar el ejemplo de facebook.com y estructurarlo para explicarlo mejor. Facebook será tratado como un proyecto y las noticias, el perfil y los grupos son los componentes de las diferentes aplicaciones dentro de todo Facebook.
Entonces, para diferentes tareas, un proyecto se puede dividir en varias aplicaciones pequeñas y estas aplicaciones se enfocan en un área funcional específica.
5. ¿Cómo inicializamos un proyecto?
Respuesta: $django-admin startproject nombre del proyecto
6. ¿Cómo inicializamos una aplicación?
Respuesta: $python manage.py startapp nombre de la aplicación
7. ¿Qué hace el archivo settings.py?
Nota: settings.py es el archivo más importante de su proyecto que contiene todas las configuraciones de su aplicación. Dé su mejor explicación del archivo settings.py. El entrevistador verificará su comprensión técnica de Django.
Respuesta: settings.py contiene la configuración del proyecto, como la conexión de la base de datos, la configuración de las aplicaciones, los valores de ruta absolutos, la configuración de archivos estáticos y el centro de comando general del proyecto.
8. ¿Cómo iniciamos nuestro servidor de desarrollo?
Respuesta: $python manage.py runserver
9. ¿Qué es la estructura MVT en Django? ¿Qué son los modelos? ¿Qué son las vistas? ¿Qué son las plantillas?
Respuesta: Los modelos son las representaciones basadas en clases de las tablas de la base de datos. Representa las estructuras de la base de datos.
La vista es básicamente la lógica empresarial y no se ocupa de cómo se ven los datos (como en la estructura MVC). Representa lo que realmente son los datos. La vista decide qué datos deben activarse cuando se accede a una URL específica . Lo que debe devolverse, como plantillas, respuestas, etc. Básicamente, las vistas devuelven las plantillas y es la conexión entre el modelo y las plantillas.
La capa de plantilla devuelve el diseño HTML. Se ocupa de la parte de presentación de las respuestas. Cómo se presentará la respuesta al usuario.
Con esta respuesta, el entrevistador verá su comprensión del modelo, la vista y la plantilla.
10. ¿Qué es el panel de administración de Django?
Nota: Esta es una de las características clave de Django, por lo que el entrevistador puede hacerte esta pregunta.
Respuesta: El panel de administración de Django es un tipo de interfaz gráfica de usuario que se utiliza para tareas administrativas. El panel de administración viene construido de manera predeterminada con Django y no es necesario que lo construyas desde cero como lo hacemos en otros idiomas. Obtiene la configuración rápida del panel de administración para administrar sus datos y acceder a ellos. El proceso de desarrollo se vuelve más rápido y también se vuelve fácil para los desarrolladores realizar actividades administrativas.
11. ¿Qué son los patrones de URL?
Nota: Esta es otra cosa básica en Django que definitivamente deberías saber. El entrevistador quiere saber si comprende cómo configurar URL en la aplicación Django.
Respuesta: Explique correctamente cómo funciona el enrutamiento en Django usando patrones de URL.
Las URL deciden el enrutamiento del sitio web. Creamos un módulo de python o un archivo urls.py en la aplicación. Este archivo decide la navegación de su sitio web. Cuando un usuario accede a una ruta de URL específica en el navegador, se compara con las URL presentes en el archivo urls.py. Después de eso, se recupera un método de vista correspondiente y luego el usuario obtiene la respuesta para la URL solicitada.
12. ¿Qué hacen los siguientes comandos?
- python manage.py hacer migraciones
- python manage.py migrar
Nota: Esta es otra cosa básica en Django. Solo necesita explicar cuál es el rol de ambos comandos en la aplicación Django.
Respuesta: el comando makemigration escanea el modelo en su aplicación y crea un nuevo conjunto de migración basado en los cambios que hacemos en el archivo del modelo. Este comando genera el comando SQL y obtenemos un nuevo archivo de migración después de ejecutar este comando. Las tablas no se crearán en la base de datos después de ejecutar este comando.
Ahora, para aplicar estos cambios en nuestra base de datos, ejecutamos el comando de migración. El comando de migración ejecuta los comandos SQL (generados en makemigrations) y aplica los cambios en la base de datos. Las tablas se crearán después de ejecutar este comando.
13. ¿Dónde almacenamos las plantillas?
Respuesta: Hay diferentes formas de almacenar plantillas. Podemos almacenarlo en la estructura de la aplicación predeterminada. Las aplicaciones de Django generalmente le dicen que almacene en una carpeta llamada plantillas, en una subcarpeta (cualquiera que sea el nombre de su aplicación), y luego puede colocar todas las plantillas allí. También puede asignar manualmente este valor en el archivo settings.py. En este archivo, encontrará una variable ‘templates’ y en esta variable encontrará una lista llamada DIRS. Aquí puede mencionar la ruta de su plantilla e informar a Django dónde encontrarla.
14. Lenguaje de plantillas Django: ¿Qué significan las llaves dobles y qué significa con los signos de porcentaje? (el entrevistador puede mostrar un ejemplo de eso)
<h2>{{name}}</h2>
Nota: El entrevistador quiere saber que sabes muy bien cómo trabajar con plantillas. Lo comprende bien y sabe cómo pasar datos y luego establecer variables en la plantilla.
Respuesta: Las llaves son solo un marcador de posición para las variables. De esta manera podemos generar datos dinámicos. Las llaves con signos de porcentaje son bloques de código en los que podemos escribir la lógica Pythonic de back-end en nuestras plantillas. Ahora puedes escribir uno de los ejemplos aquí. Puede escribir un bucle for o una instrucción if en el bloque de código de la plantilla.
{% for customer in customers %} <tr> <td>{{customer.name}}</td> </tr> {% endfor %}
15. ¿Cómo puedes incluir y heredar archivos en tu aplicación?
Respuesta: “ Usando la etiqueta include podemos incluir la sección de otra plantilla HTML”. Una explicación adecuada de heredar y extender sería «Si tenemos un archivo main.html y necesitamos heredar este archivo, entonces podemos usar la etiqueta extends en la plantilla donde queremos extenderlo, y luego podemos agregar en bloque etiquetas para ampliar la plantilla.” (Lea el artículo Etiquetas de plantilla de Django para elaborar más su respuesta)
{% extends 'base/main.html' %} {% include 'base/navbar.html' %} {% block content %} <h2>Template</h2> {% endblock content %}
16. ¿Qué sistema de base de datos prefiere usar y cómo podemos configurar la base de datos en la aplicación Django?
Nota: De forma predeterminada, Django viene con la base de datos SQLite, pero en la vida real, las empresas no la van a usar. Así que aquí el entrevistador quiere escuchar que sabes algo más allá del sistema de base de datos SQLite, y que no solo estás confiando en el sistema de base de datos predeterminado. También comprende cómo conectar otra base de datos como MySQL o PostgreSQL. Mencione dónde puede configurar su base de datos en el proyecto Django.
Respuesta: Necesitamos configurar nuestra base de datos en el archivo settings.py. De forma predeterminada, SQLite se menciona allí, y debemos cambiar esta configuración en consecuencia. También puede dar un ejemplo de configuración de una base de datos como MySQL o PostgreSQL.
17. ¿Qué son los archivos estáticos?
Respuesta: Este es el lugar donde almacenamos los archivos adicionales como archivos CSS, archivos JavaScript, imágenes o cualquier tipo de archivo estático. Por lo general, los almacenamos en su carpeta separada, como en la carpeta js , todos almacenamos todos los archivos JavaScript y en la carpeta de imágenes , almacenamos todas las imágenes. Almacenamos estos archivos en el subdirectorio de la aplicación del proyecto llamado static.
18. ¿Qué es Media Root?
Respuesta: La raíz de medios se usa para cargar contenido generado por el usuario. Podemos servir archivos multimedia subidos por el usuario desde MEDIA_ROOT.
19. ¿Cómo consultaría todos los elementos de la tabla de la base de datos?
Responder:
XYZ.objetos.get(id=1)
Nota: Solo hemos mencionado dos ejemplos de preguntas de consultas de bases de datos, pero el entrevistador puede hacer más consultas. Él / ella puede agregar más complejidad a la consulta, y luego tendrá que responderla. Así que prepárese con más consultas de bases de datos en Django.
21. ¿Qué son los tokens CSRF?
Respuesta: los tokens CSRF ayudan contra la protección integrada contra CSRFrequests, include% csrf_token % }
22. ¿Nivel de conocimientos de HTML/CSS/Bootstrap?
Nota: esta es otra pregunta de requisito previo porque en el desarrollo seguramente encontrará el código en HTML y CSS. Tendrá que manejarlo dinámicamente usando Django. Entonces, los entrevistadores quieren verificar su comprensión básica de ambos.
Respuesta: Nuevamente, si ha creado algunos proyectos, infórmeles qué cosas ha hecho en HTML y CSS o cómo lo manejó dinámicamente. Cómo se crearon las páginas o las plantillas y cómo las codificó con Django en su aplicación. También puede ampliar la respuesta mencionando qué tipo de plantillas o páginas diseñó en HTML y CSS y cómo las representó dinámicamente.
23. ¿Has trabajado en JavaScript? ¿Alguna experiencia en ello?
Nota: si no conoce JavaScript, lo más probable es que el entrevistador no lo rechace por esto, pero sería una buena ventaja si ha trabajado en él mientras creaba su proyecto en Django. Como desarrollador web, trabajará mucho con JavaScript, y tener experiencia previa le dará cierta ventaja. Si no lo sabe, está completamente bien, pero el conocimiento de JavaScript aumentará las posibilidades de ser seleccionado.
Respuesta: Si conoce JavaScript, infórmele al entrevistador qué hizo en JavaScript o qué tipo de características incorporó JavaScript junto con Django.
Pensamiento final
Las preguntas de la entrevista no están limitadas aquí para Django. Hay muchos conceptos por conocer, pero lo principal es lo que has mencionado en tu portafolio y lo que has hecho en tu proyecto. La mayoría de las preguntas que encontrará a partir de ahí. También depende del entrevistador, el nombre de la empresa, la naturaleza del trabajo y el puesto que está solicitando. Cree el proyecto, enfrente los problemas, resuelva los problemas y aprenderá más sobre Django. Así es como estarás más preparado para las preguntas de la entrevista de Django.
Publicación traducida automáticamente
Artículo escrito por anuupadhyay y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA