Try using it in your preferred language.

English

  • English
  • 汉语
  • Español
  • Bahasa Indonesia
  • Português
  • Русский
  • 日本語
  • 한국어
  • Deutsch
  • Français
  • Italiano
  • Türkçe
  • Tiếng Việt
  • ไทย
  • Polski
  • Nederlands
  • हिन्दी
  • Magyar
translation

Esta es una publicación traducida por IA.

투잡뛰는 개발 노동자

[No especializado en informática, sobrevivir como desarrollador] 14. Resumen de las preguntas comunes de la entrevista técnica para desarrolladores principiantes

Seleccionar idioma

  • Español
  • English
  • 汉语
  • Bahasa Indonesia
  • Português
  • Русский
  • 日本語
  • 한국어
  • Deutsch
  • Français
  • Italiano
  • Türkçe
  • Tiếng Việt
  • ไทย
  • Polski
  • Nederlands
  • हिन्दी
  • Magyar

Texto resumido por la IA durumis

  • Este documento resume las preguntas técnicas comunes que se hacen en las entrevistas para desarrolladores principiantes y proporciona explicaciones sobre diversos temas, como el área de memoria, las estructuras de datos, las bases de datos, la programación, el algoritmo de reemplazo de páginas, procesos e hilos, OSI 7 capas, TCP y UDP.
  • Se incluye una breve descripción de cada tema junto con ejemplos representativos para facilitar la comprensión.
  • Contiene información útil que puede ayudar a los desarrolladores a adquirir los conocimientos técnicos básicos necesarios para prepararse para una entrevista.

Sobrevivir como desarrollador sin ser de la rama


#14. Preguntas frecuentes en la entrevista técnica para desarrolladores principiantes


[Áreas de la memoria principal]

  • Área de código: El área donde se almacena el código fuente del programa, la CPU toma las instrucciones (fuente, funciones, declaraciones de control) almacenadas en el área de código y las procesa. Por ejemplo, cuando se ejecuta un programa escrito en C, el código fuente de ese programa se almacena en el área de código.
  • Área de datos: El área donde se almacenan las variables globales y las variables estáticas, se asigna al inicio del programa y no se destruye hasta que termina el programa. Por ejemplo, cuando se ejecuta un programa escrito en C, las variables globales o las variables estáticas declaradas en ese programa se almacenan en el área de datos.
  • Área de pila: El área de memoria temporal que usa el programa, se almacenan las variables locales y los parámetros relacionados con la llamada a la función. Se asigna con la llamada a la función y se destruye cuando la función termina. Por ejemplo, cuando se llama a una función escrita en C, las variables locales o los parámetros utilizados en esa función se asignan a la área de pila.
  • Área de montón: El área donde los usuarios asignan y liberan dinámicamente el espacio de memoria. Por ejemplo, cuando se asigna memoria dinámicamente usando la función malloc() en C, el área de memoria asignada se almacena en el área de montón.

[Estructuras de datos]

  • Pila: Una estructura de datos que funciona en base al principio de Último en entrar, primero en salir (LIFO). Por ejemplo, el botón "Atrás" en una computadora es similar a una pila. Las páginas visitadas anteriormente se almacenan en la pila, y cuando se presiona el botón "Atrás", la página almacenada más recientemente se extrae y aparece.
  • Cola: Una estructura de datos que funciona en base al principio de Primero en entrar, primero en salir (FIFO). Por ejemplo, recibir un número de espera en un banco y unirse a la fila de espera es similar a una cola. La persona que llegó primero es la primera en ser atendida, y la persona que llegó después es la última en ser atendida.
  • Árbol: Una estructura de datos que representa datos en una estructura jerárquica. Por ejemplo, el DOM Tree de HTML es similar a un árbol. La estructura de una página HTML se representa como un árbol, que comienza con el nodo raíz, la etiqueta html, y los nodos hijos se representan secuencialmente.
  • Montón: Un tipo de estructura de árbol binario que se divide en montón máximo y montón mínimo. Por ejemplo, en una cola de prioridad, el dato que tiene la prioridad más alta está ubicado en el nodo raíz del montón, y el dato que tiene la siguiente prioridad más alta está ubicado en el nodo hijo, lo que es un ejemplo de montón máximo.

[RDBMS y NoSQL]

  • RDBMS: Una base de datos que define y administra datos de forma estructurada con un esquema estricto. Puede almacenar datos de forma distribuida y es fácil de modificar. Por ejemplo, MySQL, Oracle, MS-SQL son ejemplos típicos de RDBMS.
  • NoSQL: Una base de datos que almacena y administra datos con un esquema flexible. Es adecuado para el procesamiento y almacenamiento de grandes cantidades de datos y también tiene una alta escalabilidad. Por ejemplo, MongoDB, Cassandra, HBase son ejemplos típicos de NoSQL.

[Orientación a procedimientos y orientación a objetos]

  • Programación orientada a procedimientos: Una técnica de programación que enfatiza el procesamiento secuencial. Los lenguajes como C y Pascal son lenguajes orientados a procedimientos.
  • Programación orientada a objetos: Un método que trata los datos y los procedimientos lógicamente unidos como objetos. Los lenguajes como Java, C++ y Python son lenguajes orientados a objetos. Por ejemplo, en un programa de simulación de automóviles, un automóvil se representa como un objeto, y sus atributos (color, aceleración, etc.) se representan como datos, y sus funciones (conducir, detener, etc.) se representan como métodos.

[Redefinición y Sobrecarga]

  • Redefinición: Redefinir y utilizar un método que la clase padre tiene en la clase hija. Cuando se llama a un método de la clase padre en la clase hija, se ejecuta el método redefinido en la clase hija en lugar del método de la clase padre. Por ejemplo, el método toString() en Java es un ejemplo de redefinición.
  • Sobrecarga: Definir varios métodos con el mismo nombre, pero con diferentes tipos y números de parámetros para responder a diferentes tipos de llamadas. Varios métodos con el mismo nombre pero diferentes parámetros funcionan. Por ejemplo, el método print() en Java es un ejemplo de sobrecarga.

[Algoritmos de reemplazo de páginas]

  • FIFO: Reemplaza la página que se ha cargado en la memoria física por más tiempo. La "cerrar" en la barra de tareas de una computadora es similar al algoritmo FIFO. El programa que se ejecutó primero es el último que se muestra y se cierra.
  • LRU: Reemplaza la página que no se ha utilizado durante más tiempo. Una "aplicación de cierre de aplicaciones" que cierra aplicaciones antiguas entre aplicaciones que no se utilizan con frecuencia también es similar al algoritmo LRU.
  • LFU: Reemplaza la página que tiene menos referencias. Por ejemplo, la función "cerrar pestaña" que cierra la pestaña que se utiliza con menos frecuencia entre las pestañas abiertas recientemente en un navegador también es similar al algoritmo LFU.
  • MFU: Reemplaza la página que tiene más referencias. El algoritmo MFU no se usa mucho.

[Proceso e hilo]

  • Proceso: La unidad de trabajo de ejecución asignada por el sistema operativo, que significa programa. Si varios procesos se ejecutan al mismo tiempo, cada proceso recibe un área de memoria independiente y una CPU.
  • Hilo: La unidad de ejecución que opera dentro de un proceso, se ejecuta compartiendo los recursos asignados al proceso. Por ejemplo, cada pestaña en un navegador web funciona como un hilo, no como un proceso.

[OSI 7Layer]

  • Capa de aplicación: La capa que conecta al usuario con la red, incluye protocolos como HTTP, FTP y SMTP.
  • Capa de presentación: La capa que define la forma de representación de los datos, incluye protocolos como JPEG, MPEG y SSL.
  • Capa de sesión: La capa que administra la sesión entre dos sistemas que se comunican.
  • Capa de transporte: La capa que se encarga de la transmisión de datos, incluye protocolos como TCP y UDP.
  • Capa de red: La capa que configura la ruta para transmitir datos, incluye protocolos como IP e ICMP.
  • Capa de enlace de datos: La capa que transmite datos por dirección física (dirección MAC), incluye protocolos como Ethernet y Token Ring.
  • Capa física: La capa que se encarga de la comunicación física y los medios de transmisión.

[TCP y UDP]

  • TCP: Un servicio orientado a la conexión que transmite datos de forma confiable. Utiliza el método de intercambio de tres vías y el método de intercambio de cuatro vías para establecer o romper una conexión. Por ejemplo, cuando se inicia sesión en un sitio web o se envía un archivo, se utiliza TCP.
  • UDP: Un servicio no orientado a la conexión que no requiere un procedimiento de señalización para la transmisión de datos, y aunque la confiabilidad de los datos es baja, tiene la ventaja de una velocidad de procesamiento rápida. Por ejemplo, en el caso de la transmisión de video en línea o los juegos en línea, se utiliza UDP porque la transmisión rápida es importante.
TheCareer
투잡뛰는 개발 노동자
코딩, 취업, 이직, 경제에 관심 많은 IT 노동자
TheCareer
[Historia de un desarrollador de SI] 12. Pila tecnológica utilizada con frecuencia en proyectos de SI Los desarrolladores de SI en Corea del Sur utilizan principalmente la pila tecnológica de Java basada en Spring, Oracle DB, MyBatis, JSP, JavaScript, HTML y CSS para desarrollar sistemas de TI eficientes y estables, y utilizan Eclipse como entorno de desa

19 de abril de 2024

[Sin un título, convirtiéndose en desarrollador] 13. Entrevista técnica para desarrolladores junior Presentamos 7 preguntas frecuentes en las entrevistas técnicas para desarrolladores junior y consejos para prepararse para la entrevista. Explore las preguntas y estrategias de respuesta sobre una variedad de temas, como OOP, bases de datos, redes, algori

1 de abril de 2024

[Sin ser un experto, sobrevivir como desarrollador] 16. Consejos para crear una cartera para desarrolladores junior Un desarrollador junior (especialmente uno que no tiene formación en el campo) debe describir claramente no solo las tecnologías en su portafolio, sino también los servicios o funciones que ha desarrollado. Por ejemplo, en el caso de un proyecto de "Comun

3 de abril de 2024

[Concurrencia] Operación atómica: Memory Fence y Memory Ordering Esta publicación de blog explica cómo tener en cuenta el orden de la memoria en las operaciones atómicas y la importancia de las opciones de ordenación. Se explica en detalle las diversas opciones de ordenación, como Relaxed, Acquire, Release, AcqRel y Se
곽경직
곽경직
곽경직
곽경직
곽경직

12 de abril de 2024

[Objetos] Capítulo 1. Objetos, diseño En el desarrollo de software, la práctica es más importante que la teoría, y un buen diseño ayuda a que el código sea fácil de entender y a que se adapte flexiblemente a los cambios. La orientación a objetos proporciona una forma de gestionar adecuadament
제이온
제이온
제이온
제이온

28 de abril de 2024

[Javascript] Estructura de objetos (V8) El objeto JavaScript en el motor V8 se optimiza como una estructura, según el estado, en un modo rápido y se convierte en un modo de diccionario que funciona como un mapa hash. El modo rápido es rápido cuando la clave y el valor son casi fijos, pero cuand
곽경직
곽경직
곽경직
곽경직
곽경직

18 de marzo de 2024

¿Qué es el método de desarrollo en cascada? El método de desarrollo en cascada es una metodología tradicional que divide el proceso de desarrollo de software en etapas secuenciales: análisis de requisitos, diseño, implementación, prueba, implementación y mantenimiento. Este método tiene la ventaja
꿈많은청년들
꿈많은청년들
꿈많은청년들
꿈많은청년들
꿈많은청년들

14 de mayo de 2024

[Objetos] Capítulo 2. Programación orientada a objetos Este documento explica la metodología de la programación orientada a objetos para implementar un sistema de reserva de entradas para películas, que abarca conceptos como colaboración, objetos, clases, herencia, polimorfismo, abstracción y composición. Pre
제이온
제이온
제이온
제이온

28 de abril de 2024

Crear una CLI genial con Rust Este artículo explica cómo implementar aplicaciones CLI con Rust. Utilizaremos las bibliotecas clap y ratatui para crear un programa CLI que incluya funciones de inicio de sesión y cierre de sesión. Cubriremos todos los aspectos del desarrollo de CLI basa
곽경직
곽경직
곽경직
곽경직
곽경직

13 de marzo de 2024