编程相关

20 books  

这有什么可介绍的呢?/

Book

漫画算法:小灰的算法之旅
Douban
魏梦舒 publishing house: 电子工业出版社 2019 - 5
《漫画算法:小灰的算法之旅》通过虚拟的主人公小灰的心路历程,用漫画的形式讲述了算法和数据结构的基础知识、复杂多变的算法面试题目及算法的实际应用场景。 第1章 介绍了算法和数据结构的相关概念,告诉大家算法是什么,数据结构又是什么,它们有哪些用途,如何分析时间复杂度,如何分析空间复杂度。 第2章 介绍了最基本的数据结构,包括数组、链表、栈、队列、哈希表的概念和读写操作。 第3章 介绍了树和二叉树的概念、二叉树的各种遍历方式、二叉树的特殊形式——二叉堆和优先队列的应用。 第4章 介绍了几种典型的排序算法,包括冒泡排序、快速排序、堆排序、计数排序、桶排序。 第5章 介绍了10余道职场上流行的算法面试题及详细的解题思路。例如怎样判断链表有环,怎样计算大整数相加等。 第6章 介绍了算法在职场上的一些应用,例如使用LRU算法来淘汰冷数据,使用Bitmap算法来统计用户特征等。

Book

HTTP权威指南
HTTP: The Definitive Guide Douban
★ 8.7 20 ratings
David Gourley / Brian Totty translator: 陈涓 / 赵振平 publishing house: 人民邮电出版社 2012 - 9
超文本传输协议(Hypertext Transfer Protocol,HTTP)是在万维网上进行通信时所使用的协议方案。HTTP有很多应用,但最著名的是用于web浏览器和web服务器之间的双工通信。 HTTP起初是一个简单的协议,因此你可能会认为关于这个协议没有太多好说的。但现在,你手上拿着的是却一本两磅重 的书。如果你对我们怎么会写出一本650页 的关于HTTP的书感到奇怪的话,可以去看一下目录。本书不仅仅是一本HTTP首部的参考手册;它是一本名副其实的web结构圣经。 本书中,我们尝试着将HTTP中一些互相关联且常被误解的规则梳理清楚,并编写了一系列基于各种主题的章节,对HTTP各方面的特性进行了介绍。纵观全书,我们对HTTP“为什么”这样做进行了详细的解释,而不仅仅停留在它是“怎么做”的。而且,为了节省大家寻找参考文献的时间,我们还对很多HTTP应用程序正常工作所必须的、重要的非HTTP技术进行了介绍。在组织得便于使用的附录中,可以找到按照字母排序的首部参考(这些首部构成了最常见的HTTP文本的基础)。我们希望这种概念性的设计有助于读者对HTTP的使用。 本书是为所有希望理解HTTP以及Web底层结构的人编写的。软硬件工程师也可以将本书作为HTTP及相关web技术的条理清楚的参考书使用。系统架构师和网络管理员可以通过本书更好地了解如何设计、实现并管理复杂的网络架构。性能工程师和分析人员可以从高速缓存和性能优化的相关章节中获益。市场营销和咨询专家可以通过概念的介绍更好地理解web技术的前景。 本书对一些常见的误解进行了说明,推荐了“各种使用诀窍”,提供了便捷的参考资料,并且对枯燥且令人费解的标准规范进行了可读性很强的介绍。在这本书里,我们对Web正常工作所必须且互相关联的技术进行了详细的介绍。 本书是很多对因特网技术充满热情的人经过大量工作写成的。希望对你有所帮助。

Book

你不知道的JavaScript(上卷)
Douban Eggplant.place
★ 9.5 18 ratings
[美] Kyle Simpson translator: 赵望野 / 梁杰 publishing house: 人民邮电出版社 2015 - 4
JavaScript语言有很多复杂的概念,但却用简单的方式体现出来(比如回调函数),因此,JavaScript开发者无需理解语言内部的原理,就能编写出功能全面的程序;就像收音机一样,你无需理解里面的管子和线圈都是做什么用的,只要会操作收音机上的按键,就可以收听你喜欢的节目。然而,JavaScript的这些复杂精妙的概念才是语言的精髓,即使是经验丰富的JavaScript开发者,如果没有认真学习也无法真正理解语言本身的特性。正是因为绝大多数人不求甚解,一遇到出乎意料的行为就认为是语言本身有缺陷,进而把相关的特性加入黑名单,久而久之就排除了这门语言的多样性,人为地使它变得不完整、不安全。 “你不知道的JavaScript”系列就是要让不求甚解的JavaScript开发者迎难而上,深入语言内部,弄清楚JavaScript每一个零部件的用途。本书介绍了该系列的两个主题:“作用域和闭包”以及“this和对象原型”。掌握了这些知识之后,无论什么技术、框架和流行词语,你都能轻松理解。

Book

你不知道的JavaScript(中卷)
Douban
★ 7.5 6 ratings
[美] Kyle Simpson translator: 单业 / 姜南 publishing house: 人民邮电出版社 2016 - 8
JavaScript这门语言简单易用,很容易上手,但其语言机制复杂微妙,即使是经验丰富的JavaScript开发人员,如果没有认真学习的话也无法真正理解。本套书直面当前JavaScript开发人员不求甚解的大趋势,深入理解语言内部的机制,全面介绍了JavaScript中常被人误解和忽视的重要知识点。本书是其中卷,主要介绍了类型、语法、异步和性能。

Book

你不知道的JavaScript(下卷)
You don't know JS Douban
[美] Kyle Simpson translator: 单业 publishing house: 人民邮电出版社 2018 - 1
JavaScript这门语言简单易用,很容易上手,但其语言机制复杂微妙,即使是经验丰富的JavaScript开发人员,如果没有认真学习的话也无法真正理解。本套书直面当前JavaScript开发人员不求甚解的大趋势,深入理解语言内部的机制,全面介绍了JavaScript中常被人误解和忽视的重要知识点。本书是其下卷,主要介绍了JavaScript入门知识和对ES6及未来发展趋势的展望。

Book

图解HTTP
HTTPの教科書 Douban Goodreads
★ 8.0 50 ratings
[日] 上野宣 translator: 于均良 publishing house: 人民邮电出版社 2014 - 4
图解HTTP》对互联网基盘——HTTP协议进行了全面系统的介绍。作者由HTTP协议的发展历史娓娓道来,严谨细致地剖析了HTTP协议的结构,列举诸多常见通信场景及实战案例,**后延伸到Web安全、**新技术动向等方面。《图解HTTP》的特色为在讲解的同时,辅以大量生动形象的通信图例,更好地帮助读者深刻理解HTTP通信过程中客户端与服务器之间的交互情况。读者可通过《图解HTTP》快速了解并掌握HTTP协议的基础,前端工程师分析抓包数据,后端工程师实现REST API、实现自己的HTTP服务器等过程中所需的HTTP相关知识点本书均有介绍。 《图解HTTP》适合Web开发工程师,以及对HTTP协议感兴趣的各层次读者。

Book

我的第一本算法书
アルゴリズム図鑑 Douban
★ 8.1 16 ratings
[日]石田保辉 / [日]宮崎修一 translator: 张贝 publishing house: 人民邮电出版社 2018 - 11
本书采用大量图片,通过详细的分步讲解,以直观、易懂的方式展现了7个数据结构和26个基础算法的基本原理。第1章介绍了链表、数组、栈等7个数据结构;从第2章到第7章,分别介绍了和排序、查找、图论、安全、聚类等相关的26个基础算法,内容涉及冒泡排序、二分查找、广度优先搜索、哈希函数、迪菲 - 赫尔曼密钥交换、k-means 算法等。 本书没有枯燥的理论和复杂的公式,而是通过大量的步骤图帮助读者加深对数据结构原理和算法执行过程的理解,便于学习和记忆。将本书作为算法入门的第一步,是非常不错的选择。

Book

网络是怎样连接的
ネットワークはなぜつながるのか 第2版 Douban
★ 8.6 35 ratings
[日] 户根勤 translator: 周自恒 publishing house: 人民邮电出版社 2017 - 1
本书以探索之旅的形式,从在浏览器中输入网址开始,一路追踪了到显示出网页内容为止的整个过程,以图配文,讲解了网络的全貌,并重点介绍了实际的网络设备和软件是如何工作的。目的是帮助读者理解网络的本质意义,理解实际的设备和软件,进而熟练运用网络技术。同时,专设了“网络术语其实很简单”专栏,以对话的形式介绍了一些网络术语的词源,颇为生动有趣。 本书图文并茂,通俗易懂,非常适合计算机、网络爱好者及相关从业人员阅读。

Book

Why Programs Fail
Why Programs Fail: A Guide to Systematic Debugging Douban
泽勒 translator: 王咏武 / 王咏刚 publishing house: 电子工业出版社 2007 - 3

Book

Why Programs Fail, Second Edition
Douban Goodreads
Andreas Zeller publishing house: Morgan Kaufmann 2009 - 6 other title: Why Programs Fail: A Guide to Systematic Debugging
This fully updated second edition includes 100+ pages of new material, including new chapters on Verifying Code, Predicting Errors, and Preventing Errors. Cutting-edge tools such as FindBUGS and AGITAR are explained, techniques from integrated environments like Jazz.net are highlighted, and all-new demos with ESC/Java and Spec#, Eclipse and Mozilla are included. This complete and pragmatic overview of debugging is authored by Andreas Zeller, the talented researcher who developed the GNU Data Display Debugger(DDD), a tool that over 250,000 professionals use to visualize the data structures of programs while they are running. Unlike other books on debugging, Zeller's text is product agnostic, appropriate for all programming languages and skill levels. Why Programs Fail explains best practices ranging from systematically tracking error reports, to observing symptoms, reproducing errors, and correcting defects. It covers a wide range of tools and techniques from hands-on observation to fully automated diagnoses, and also explores the author's innovative techniques for isolating minimal input to reproduce an error and for tracking cause and effect through a program. It even includes instructions on how to create automated debugging tools. The new edition of this award-winning productivity-booster is for any developer who has ever been frustrated by elusive bugs. Brand new chapters demonstrate cutting-edge debugging techniques and tools, enabling readers to put the latest time-saving developments to work for them. Learn by doing. New exercises and detailed examples focus on emerging tools, languages and environments, including AGITAR, FindBUGS, Python and Eclipse. The text includes exercises and extensive references for further study, and a companion website with source code for all examples and additional debugging resources.

Book

大话数据结构
Douban
★ 7.5 13 ratings
程杰 publishing house: 清华大学出版社 2011 - 6
本书为超级畅销书《大话设计模式》作者程杰潜心三年推出的扛鼎之作!以一个计算机教师教学为场景,讲解数据结构和相关算法的知识。通篇以一种趣味方式来叙述,大量引用了各种各样的生活知识来类比,并充分运用图形语言来体现抽象内容,对数据结构所涉及到的一些经典算法做到逐行分析、多算法比较。与市场上的同类数据结构图书相比,本书内容趣味易读,算法讲解细致深刻,是一本非常适合自学的读物。 本书以一个计算机教师教学为场景,讲解数据结构和相关算法的知识。通篇?一种趣味方式来叙述,大量引用了各种各样的生活知识来类比,并充分运用图形语言来体现抽象内容,对数据结构所涉及到的一些经典算法做到逐行分析、多算法比较。与市场上的同类数据结构图书相比,本书内容趣味易读,算法讲解细致深刻,是一本非常适合自学的读物。

Book

计算机系统解密
The Secret Life of Programs: Understand Computers -- Craft Better Code Google Books Douban
斯坦哈特 publishing house: 机械工业出版社 2021
本书探讨了计算机背后的基础内容,比如计算机硬件,软件在硬件上的行为,以及随着时间的推移,人们如何解决问题等主题.你将学到:现实世界是如何转换成计算机能理解的形式的,比如位,逻辑,数字,文本和颜色.组成计算机的基本构件,包括逻辑门,加法器,译码器,寄存器和存储器.为什么设计与计算机硬件(特别是内存)相匹配的程序可以提高性能.如何将程序转换为计算机能够理解的机器语言.软件构建块是如何结合起来创造Web浏览器等程序的等.

Book

算法图解
Grokking Algorithms: An illustrated guide for programmers and other curious people Google Books Douban
★ 8.0 35 ratings
[美] Aditya Bhargava translator: 袁国忠 publishing house: 人民邮电出版社 2017 - 3
本书示例丰富,图文并茂,以让人容易理解的方式阐释了算法,旨在帮助程序员在日常项目中更好地发挥算法的能量。书中的前三章将帮助你打下基础,带你学习二分查找、大O表示法、两种基本的数据结构以及递归等。余下的篇幅将主要介绍应用广泛的算法,具体内容包括:面对具体问题时的解决技巧,比如,何时采用贪婪算法或动态规划;散列表的应用;图算法;K最近邻算法。

Book

图解TCP/IP(第5版)
マスタリングTCP/IP 入門編 第5版 Douban
★ 7.5 15 ratings
[日]竹下隆史 / [日]村山公保 … translator: 乌尼日其其格 publishing house: 人民邮电出版社 2013 - 7
这是一本图文并茂的网络管理技术书籍,旨在让广大读者理解TCP/IP的基本知识、掌握TCP/IP的基本技能。 书中讲解了网络基础知识、TCP/IP基础知识、数据链路、IP协议、IP协议相关技术、TCP与UDP、路由协议、应用协议、网络安全等内容,引导读者了解和掌握TCP/IP,营造一个安全的、使用放心的网络环境。 本书适合计算机网络的开发、管理人员阅读,也可作为大专院校相关专业的教学参考书。

Book

Composing Software
Douban
Eric Elliott publishing house: Independently published 2018 - 10
All software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Most developers have a limited understanding of compositional techniques. It's time for that to change.In "Composing Software", Eric Elliott shares the fundamentals of composition, including both function composition and object composition, and explores them in the context of JavaScript. The book covers the foundations of both functional programming and object oriented programming to help the reader better understand how to build and structure complex applications using simple building blocks.You'll learn:Functional programmingObject compositionHow to work with composite data structuresClosuresHigher order functionsFunctors (e.g., array.map)Monads (e.g., promises)TransducersLensesAll of this in the context of JavaScript, the most used programming language in the world. But the learning doesn't stop at JavaScript. You'll be able to apply these lessons to any language. This book is about the timeless principles of software composition and its lessons will outlast the hot languages and frameworks of today. Unlike most programming books, this one may still be relevant 20 years from now.This book began life as a popular blog post series that attracted hundreds of thousands of readers and influenced the way software is built at many high growth tech startups and fortune 500 companies.

Book

Crafting Interpreters
Douban Goodreads Skybridge
Robert Nystrom publishing house: Genever Benning 2021 - 7 other title: Crafting Interpreters
Despite using them every day, most software engineers know little about how programming languages are designed and implemented. For many, their only experience with that corner of computer science was a terrifying "compilers" class that they suffered through in undergrad and tried to blot from their memory as soon as they had scribbled their last NFA to DFA conversion on the final exam. That fearsome reputation belies a field that is rich with useful techniques and not so difficult as some of its practitioners might have you believe. A better understanding of how programming languages are built will make you a stronger software engineer and teach you concepts and data structures you'll use the rest of your coding days. You might even have fun. This book teaches you everything you need to know to implement a full-featured, efficient scripting language. You’ll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused. Starting from main(), you will build a language that features rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes, and inheritance. All packed into a few thousand lines of clean, fast code that you thoroughly understand because you wrote each one yourself.

Book

The Programmer's Brain
Google Books Douban Goodreads Skybridge
Felienne Hermans publishing house: Manning Publications 2021 - 9
Your brain responds in a predictable way when it encounters new or difficult tasks. This unique book teaches you concrete techniques rooted in cognitive science that will improve the way you learn and think about code. In The Programmer’s Brain: What every programmer needs to know about cognition you will learn: Fast and effective ways to master new programming languages Speed reading skills to quickly comprehend new code Techniques to unravel the meaning of complex code Ways to learn new syntax and keep it memorized Writing code that is easy for others to read Picking the right names for your variables Making your codebase more understandable to newcomers Onboarding new developers to your team Learn how to optimize your brain’s natural cognitive processes to read code more easily, write code faster, and pick up new languages in much less time. This book will help you through the confusion you feel when faced with strange and complex code, and explain a codebase in ways that can make a new team member productive in days! about the technology Understanding the cognitive functions that govern the way your brain thinks about coding will help you work smarter, not harder. You’ll improve your productivity, reduce your need for constant rewrites, and say goodbye to spending late nights struggling with new languages. about the book The Programmer’s Brain explores the way your brain works when it’s thinking about code. In it, you’ll master practical ways to apply these cognitive principles to your daily programming life. You’ll improve your code comprehension by turning confusion into a learning tool, and pick up awesome techniques for reading code and quickly memorizing syntax. This practical guide includes tips for creating your own flashcards and study resources that can be applied to any new language you want to master. By the time you’re done, you’ll not only be better at teaching yourself—you’ll be an expert at bringing new colleagues and junior programmers up to speed.

Book

TypeScript in 50 Lessons
Goodreads Douban
Stefan Baumgartner publishing house: Smashing Magazine 2020
You might have heard about TypeScript, but you might not know why it's useful, and how to make it work for you. This book is supposed to fix just that: it provides JavaScript developers with a simple, structured and pragmatic guidance towards TypeScript, and explains how to make sense of it all, step-by-step.<br />In “TypeScript in 50 Lessons”, Stefan Baumgartner breaks down the quirks of TypeScript into short, manageable lessons — for front-end developers who know enough JavaScript to be dangerous.

Book

The Coding Career Handbook. Guides, Principles, Strategies, and Tactics – from Code Newbie to Senior Dev
Goodreads
Shawn Swyx Wang
The Coding will always be the easiest part of a Coding Career. This is a comprehensive guide about the principles, strategies and tactics developers can use to build an awesome career! Career Guides. Specific advice on every career stage from Code Newbie to Junior Dev to Senior Dev, and every transition after: the First Job Hunt, going from Junior to Senior, and Beyond. Principles. The best investments are in things that don't change. We discuss timeless rules for successful default behaviour. Learn to grow your network and expertise, while you learn. Strategies. Everything to do with making big moves, from Betting on Technologies, to Career Ladders, to Software Business Models. Grow your business and personal impact! Tactics Important, self-contained skills that you can repeatedly call on throughout your career, from Negotiating to Side Projects to Twitter to Writing.
Reply Quote Jan. 15, 2023