¿Qué libros de informática has leído en 2021?
Lenguaje de dominio específico DSL, analiza casos específicos a través del lenguaje Java y C, explica el modo de construcción y principios generales de DSL, tutorial para programadores de desarrollo de software, nuevo trabajo de Martin Fowler.
El lenguaje específico de dominio (DSL) es un trabajo representativo en el campo de DSL. Fue escrito por el maestro en desarrollo de software Martin Fowler durante muchos años.
El libro tiene un total de 57 capítulos, divididos en 6 partes, que presentan de manera integral conceptos de DSL, temas de DSL comunes, temas de DSL externos, temas de DSL internos, modelos informáticos alternativos y generación de código, revelando que tiene nada que ver con lenguajes de programación También explica cómo mejorar efectivamente la productividad de los desarrolladores a través de DSL y mejorar la comunicación efectiva con expertos en el dominio, lo que puede proporcionar una base efectiva para la toma de decisiones y un método de orientación para que los desarrolladores elijan y utilicen DSL.
Este libro es adecuado para desarrolladores de software que desean comprender varios DSL y sus métodos de construcción, así como sus principios generales, patrones y escenarios aplicables, para mejorar su productividad de desarrollo y sus habilidades de comunicación.
[US] Kenneth A. Lambert (Kenneth, a., Lambert), traducido por Xiao Jianming
Curso introductorio sobre algoritmos de estructura de datos, basado en la explicación del lenguaje Python, universidades extranjeras The El libro de texto actualizado incluye una gran cantidad de ejercicios y proyectos de programación, así como recursos de apoyo.
Este libro utiliza el lenguaje Python para explicar las estructuras de datos y los métodos de implementación. El libro primero describe las funciones de la programación en Python; estas funciones son necesarias para la programación práctica y la resolución de problemas; en segundo lugar, presenta las especificaciones, implementación y aplicación de tipos de datos abstractos, tipos de conjuntos de elementos múltiples y las diferencias importantes entre interfaces e implementaciones; . Luego, se introducen conjuntos de polinomios lineales, pilas, colas y listas enlazadas. Finalmente, se introducen árboles y gráficos. Este libro viene con una gran cantidad de preguntas de repaso y proyectos de programación para ayudar a los lectores a consolidar el conocimiento que han aprendido.
Este libro no solo es adecuado para profesores y estudiantes de informática en colegios y universidades, sino también para lectores y programadores interesados en Python.
Escrito por Jon Jon Kleinberg y traducido por Wang Haipeng.
Utiliza ejemplos prácticos para ilustrar la aburrida teoría de algoritmos y presta más atención al cultivo del pensamiento de diseño de algoritmos. Es adecuado como libro de introducción a los algoritmos.
Este es un libro de texto para un curso de diseño de algoritmos utilizado por muchas escuelas prestigiosas. Hace hincapié en el uso de ejemplos prácticos para ilustrar teorías de algoritmos aburridas y presta más atención a las ideas de diseño de algoritmos que al análisis de la complejidad de los algoritmos. Este libro utiliza métodos de enseñanza novedosos para estimular el pensamiento algorítmico mediante el análisis de problemas del mundo real. De manera clara y directa, los dos autores guían a los estudiantes para que analicen y definan el problema por sí mismos y encuentren los principios de diseño de algoritmos adecuados para el escenario dado. Este libro anima a los lectores a obtener una comprensión más profunda del proceso de diseño de algoritmos y a explorar aplicaciones de algoritmos en el campo más amplio de la informática.
Este libro tiene las siguientes características:
Wang Zhengzhu
20 estructuras de datos y algoritmos, 100 escenarios de proyectos reales, más de 300 ilustraciones de algoritmos dibujadas a mano. .
Este libro está dividido en 11 capítulos. El Capítulo 1 presenta los métodos de análisis de complejidad. El Capítulo 2 presenta estructuras de datos de listas lineales básicas, como matrices, listas vinculadas, pilas y colas. El Capítulo 3 presenta técnicas de programación recursiva, ocho clasificaciones clásicas, métodos de búsqueda binaria y variaciones de métodos de búsqueda binaria. El Capítulo 4 presenta tablas hash, mapas de bits, algoritmos hash y filtros Bloom. El Capítulo 5 presenta estructuras de datos relacionadas con árboles, incluidos árboles binarios, árboles de búsqueda binarios, árboles de búsqueda binarios equilibrados, árboles recursivos y árboles B. El Capítulo 6 presenta el montón y sus diversas aplicaciones, incluida la clasificación del montón, las colas de prioridad y la búsqueda del K superior, la mediana y el percentil. El Capítulo 7 presenta algunas estructuras de datos avanzadas, como listas de salto, uniones, árboles de segmentos y matrices de árboles. El Capítulo 8 presenta los algoritmos de coincidencia de cadenas, incluidos el algoritmo BF, el algoritmo RK, el algoritmo BM, el algoritmo KMP, el árbol Trie y el autómata AC.
El Capítulo 9 presenta gráficos y algoritmos relacionados, incluida la búsqueda en profundidad, la búsqueda en amplitud, la clasificación topológica, el algoritmo de Dijkstra, el algoritmo de Floyd, el algoritmo A*, el algoritmo de árbol de expansión pequeño Z, el algoritmo de flujo grande Z y la coincidencia bipartita Z. . El Capítulo 10 presenta cuatro algoritmos: codicioso, divide y vencerás, retroceso y programación dinámica. El Capítulo 11 presenta la aplicación de estructuras de datos y algoritmos en cuatro proyectos clásicos: Redis, motor de búsqueda, flujo de autoridad de autenticación y servicio de URL corta. Además, el Apéndice A contiene respuestas a las preguntas de pensamiento del libro.
"America" de Al Swygart
Un complemento de la programación Python desde la introducción a la práctica, un libro tutorial de Python de autoaprendizaje de base cero, que brinda soporte a videos de enseñanza sincrónicos y en línea. entorno de programación! Actualizaciones de Python3. x versión 3.x
En este libro, aprenderá a programar en Python, realizando horas de trabajo manual en minutos sin experiencia en programación. Al leer este libro, aprenderá los conceptos básicos de Python, explorará la rica biblioteca de módulos de Python y completará tareas específicas (por ejemplo, extraer datos de sitios web, leer documentos PDF y Word, etc.). Este libro también cubre los métodos de implementación de validación de entradas. y técnicas para actualizar automáticamente archivos CSV. Una vez que haya dominado los conocimientos básicos de programación, podrá crear fácilmente programas Python para completar automáticamente muchas tareas tediosas, que incluyen:
Autor: He Huaping
Un curso práctico introductorio de base cero en programación Python, use Python para procesar archivos de Excel, Word, PPT, PDF y de imágenes para mejorar la eficiencia de la oficina y resolver problemas de oficina. Viene con recursos de aprendizaje y videos didácticos.
Este es un libro sobre cómo usar Python para mejorar la eficiencia diaria de la oficina. Este libro incorpora los muchos años de experiencia práctica y el pensamiento único del autor, y está diseñado para ayudar a los lectores a completar una gran cantidad de tareas altamente repetitivas de manera precisa y eficiente.
"Aprenda Python sin trabajar horas extras: implemente fácilmente la automatización de la oficina" reúne problemas comunes en la oficina diaria y el procesamiento de documentos a través de demostraciones y explicaciones de ejemplos, ayuda a los lectores a usar Python de manera flexible y efectiva para resolver los problemas encontrados. en el trabajo. El libro tiene 11 capítulos en total, que cubren varios escenarios de aplicación de Python, incluida la automatización de la gestión de archivos, la adquisición automática de información de red, el procesamiento automático de archivos TXT, XLS/XLSX, DOC/DOCX, PPT, PDF e imágenes, y simulación de mouse y control por teclado del Software local, gestión automática de operaciones, etc. Este libro intenta restar importancia a los conceptos abstractos de la programación, adaptarlos a escenarios de trabajo y centrarse en efectos prácticos. A través de explicaciones inteligentes de la tecnología Python, ayuda a los lectores a convertirse en "superhombres" eficientes en la oficina.
Autor: Lei Ming
Un tutorial en el campo del aprendizaje profundo de inteligencia artificial, un libro de referencia matemática para programadores de IA, una comprensión profunda de los algoritmos de aprendizaje automático y una comprensión matemática de La lógica de los principios básicos del algoritmo, explicación del programa Python.
El objetivo de este libro es ayudar a los lectores a aprender de manera integral y sistemática el conocimiento matemático necesario para el aprendizaje automático. El libro consta de ocho capítulos y se esfuerza por cubrir de manera precisa y mínima las matemáticas del aprendizaje automático. Incluyendo cálculo, álgebra lineal y teoría de matrices, métodos de optimización, teoría de probabilidad, teoría de la información, procesos estocásticos y teoría de grafos. Este libro enseña estos conocimientos matemáticos desde la perspectiva del aprendizaje automático e ilustra su aplicación en este campo con ejemplos, lo que permite a los lectores tener una comprensión intuitiva y concreta de la aplicación práctica de algunos conocimientos y teorías matemáticas abstractas. Este libro tiene contenido compacto, estructura clara, explicaciones simples y detalladas. Se puede utilizar como libro de texto y libro de referencia para informática, inteligencia artificial, ingeniería electrónica, automatización, matemáticas y otras especialidades relacionadas. Este libro también tiene un gran valor de referencia para técnicos de ingeniería y desarrolladores de productos en el campo de la inteligencia artificial. Para la mayoría de los entusiastas de las matemáticas y las matemáticas aplicadas, este libro también es adecuado para el autoaprendizaje.
Zhang
El curso "DDD Domain-Driven Design" refina aún más el sistema metodológico del diseño basado en dominios y demuestra la implementación de un proceso unificado a través de casos prácticos, que pueden ayudar a los lectores. mejorar la construcción de dominios y las capacidades de diseño de software.
Este libro explica de manera integral el sistema de conocimiento del Diseño impulsado por el dominio (DDD), cubre los modos principales y los métodos principales del Diseño impulsado por el dominio y, sobre esta base, propone un proceso unificado de Diseño impulsado por el dominio ( DDDUP), todo el proceso de construcción del software se divide en tres etapas: análisis global, mapeo de arquitectura y modelado de dominio. Además de brindar muchos casos para explicar los métodos y patrones en el proceso de unificación del diseño impulsado por dominios, este libro también utiliza un caso real y completo para mostrar cómo implementar e implementar el proceso de unificación del diseño impulsado por dominios. Para utilizar mejor el proceso unificado del diseño impulsado por dominios, este libro también presenta de manera creativa métodos y modelos como servicios comerciales, arquitectura de simetría de diamante, arquitectura impulsada por dominios, diseño impulsado por servicios, etc., y resume los modelos de evaluación de capacidades. y referencias del modelo de proceso impulsado por dominio. La metodología propuesta en este libro se ha implementado en muchos proyectos.
Liu·
Libro tutorial de introducción a Linux, basado en el sistema Linux RHEL8, cada capítulo tiene diagramas y ejercicios, y los puntos de conocimiento cubren los requisitos del examen RHCE para la certificación Red Hat.
1. Este libro tardó casi tres años y fue revisado más de 1.500 veces. El contenido proviene de un curso de formación de Linux del mismo nombre en China que se visita casi 60.000 veces al día.
2. El sistema se actualizó según la versión anterior. Está escrito en base al sistema Linux RHEL 8 y es adecuado para versiones derivadas convencionales como CentOS, Fedora y Ubuntu.
3. Para lectores sin conocimientos básicos, comience con los conocimientos básicos de Linux y aumente gradualmente la dificultad del contenido.
"Cómo aprender Linux (segunda edición)" se ha actualizado en gran medida sobre la base de la edición anterior. Está escrito en base al sistema Red Hat RHEL 8 y el contenido es adecuado para CentOS, Fedora y. otros sistemas. Este libro está dividido en 20 capítulos, que cubren la implementación del sistema Linux, los comandos comunes de Linux, las tecnologías relacionadas con la lectura y escritura de archivos, el uso del editor Vim para escribir y modificar archivos de configuración, la configuración de identidades de usuario y permisos de archivos, la partición, el formateo y el montaje de dispositivos de disco duro. Las diferencias y configuraciones de la implementación de matrices de discos RAID y firewalls LVM, firewalld e iptables. Use el servicio ssh para administrar hosts remotos, use el servicio Apache para implementar sitios web estáticos, use el servicio vsftpd para transferir archivos, use Samba o NFS para compartir archivos, use BIND para proporcionar servicios de resolución de nombres de dominio, use DHCP para administrar dinámicamente direcciones de host, use Postfix y Dovecot para implementar sistemas de correo y utilizar los servicios de Ansible para realizar operaciones y mantenimiento automatizados. Utilice el servicio iSCSI para implementar almacenamiento en red, utilice el sistema de gestión de bases de datos MariaDB, utilice el servicio de instalación desatendida PXE Kickstart y utilice la arquitectura LNMP para implementar un entorno de sitio web dinámico. Además, el sitio web de soporte de este libro también proporciona revisiones detalladas de las certificaciones RHCSA, RHCE y RHCA de Red Hat para facilitar la preparación de los lectores para los exámenes.
Autor: Zhang Xinxu
CSS3.0 es un curso introductorio para cursos avanzados. El blog front-end "Xin Space-Xin Life" es el resultado de diez años de experiencia. Tiene una gran cantidad de casos prácticos y demostraciones en línea. Es compatible con el sitio web oficial y puede comunicarse con el autor en cualquier momento.
Este libro es la última parte de la "Trilogía Mundial CSS". Esta es una lectura avanzada sobre CSS, que se centra en las nuevas características de CSS3 y sus versiones posteriores. En este libro, el autor explica los conocimientos básicos de CSS basándose en sus muchos años de experiencia laboral y considera plenamente las necesidades de los desarrolladores front-end. El autor utiliza los antecedentes históricos de las nuevas funciones de CSS como pista para presentar cientos de funciones nuevas de CSS de una manera simple y fácil de entender. Además, el autor también desarrolló un sitio web de apoyo específicamente para este libro para mostrar los efectos de los ejemplos del libro en línea y responder preguntas.
Todos los contenidos de este libro han sido refinados por el autor después de una reflexión y exploración en profundidad. Tiene muchos puntos de conocimiento y contenido rico, centrándose en detalles técnicos, intercambio de experiencias e ideas para la resolución de problemas. El objetivo principal de este libro es ayudar a los desarrolladores de aplicaciones para el usuario a superar el cuello de botella de la mejora de las habilidades de CSS. Es muy adecuado para que lo lean los desarrolladores de aplicaciones para el usuario con cierta base en CSS.
Autor [estadounidense] William Short, traducido por Menjia Li Wei.
Enseñarle a aprender el sistema operativo Linux, escribir código de programación de script shell, operación y mantenimiento de programación de administración de sistemas y aprender a usar bash (LinuxShell) para escribir programas completos.
Este libro presenta la línea de comandos de Linux en detalle. El libro completo consta de cuatro partes. La primera parte comienza el viaje de aprendizaje de los conceptos básicos de la línea de comandos presentando el Shell; la segunda parte describe la edición de archivos de configuración y cómo controlar la computadora a través de la línea de comandos; la tercera parte analiza las tareas comunes y las herramientas necesarias; una introducción completa a la programación de Shell. Los lectores pueden dominar la aplicación de comandos de Linux escribiendo manualmente scripts de Shell para automatizar tareas informáticas comunes. Al leer este libro, los lectores tendrán una comprensión más profunda de los comandos de Linux y podrán aplicarlos al trabajo práctico.
Este libro es adecuado para principiantes en Linux, administradores de sistemas Linux y entusiastas de Linux.
Escrito por Brian W. Koenigan, traducido por Lei Han.
La historia del nacimiento y desarrollo de UNIX es otra obra maestra del pionero de la informática Brian W. Knihan después del lenguaje de programación C. Cuenta la historia detrás de escena de Bell Labs, el origen de importantes inventos como. C/C, y explora ¡La luz de la ciencia computacional!
Desde su nacimiento en el ático de los Laboratorios Bell en 1969, el sistema operativo Unix ha evolucionado mucho más allá de la imaginación de sus creadores. Ha promovido el desarrollo de muchos software innovadores, influido en innumerables programadores y cambiado la trayectoria de desarrollo de toda la tecnología informática.
Este libro no solo escribe la historia de Unix, sino que también registra los recuerdos del autor, explora los orígenes de Unix e intenta explicar qué es Unix, cómo surgió y por qué es tan importante. Además, este libro también cuenta la interesante historia de un grupo de genios inventivos que trabajan en Bell Labs en un estilo relajado. Cada historia de este libro es un recurso poco conocido pero valioso que vale la pena difundir.
Este libro es adecuado para personas interesadas en la informática o en la historia relacionada. Los lectores no necesitan mucha experiencia técnica profesional para apreciar las ideas detrás de Unix y comprender su importancia.
[indio] Rahul Sharma [finlandés] Vishal Kailavetta, traducido por Deng Shichao.
La Guía de programación del sistema Rust es un libro tutorial de autoaprendizaje para aprender los conceptos básicos del lenguaje de programación Rust, dominar los paradigmas de programación de alto nivel y convertirse en un experto en programación de alto nivel.
Este libro tiene un total de 17 capítulos, que explican el conocimiento relacionado con Rust de superficial a profundo, y cubren sintaxis básica, administradores de paquetes, herramientas de prueba, sistemas de tipos, administración de memoria, manejo de excepciones, tipos avanzados y modelos de concurrencia. , macros, interfaz de funciones externas, programación de redes, HTTP, base de datos, WebAssembly, marco GTK, depuración de GDB.
Este libro es adecuado para lectores que quieran aprender a programar en Rust. Espero que los lectores puedan comprender algo de C, C o Python. Los ricos ejemplos de código y las explicaciones detalladas del libro pueden ayudar a los lectores a comenzar rápidamente y dominar la programación de Rust de manera eficiente.