programming
Dart编程语言
Douban
【美】Gilad Bracha translator: 戴虬 publishing house: 电子工业出版社 2017 - 6
《Dart编程语言》总计9章,前6章对Dart的对象、库、函数、类型、表达式与语句等基础知识进行了详细介绍;第7、8章对反射和isolate等进阶内容进行了深入讲解;第9章为总结。《Dart编程语言》与众不同之处是,除了介绍语言特性,更着重于讲解语言背后的原理和思想。 《Dart编程语言》内容较为深入,不太适合初学者,读者至少要具备基本的编程知识,最好是接触过其他编程语言且对Dart有基本了解。
Types and Programming Languages
Douban Goodreads
Benjamin C. Pierce publishing house: The MIT Press 2002 - 2 other title: Types and Programming Languages
A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute. The study of type systems--and of programming languages from a type-theoretic perspective -- -has important applications in software engineering, language design, high-performance compilers, and security.This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material.The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.
代码大全(第2版)
Code Complete Douban Goodreads
★ 9.9 20 ratings
[美] 史蒂夫·迈克康奈尔 translator: 金戈 / 汤凌 … publishing house: 电子工业出版社 2006 - 3
第2版的《代码大全》是著名IT畅销书作者史蒂夫·迈克康奈尔11年前的经典著作的全新演绎:第2版不是第一版的简单修订增补,而是完全进行了重写;增加了很多与时俱进的内容。这也是一本完整的软件构建手册,涵盖了软件构建过程中的所有细节。它从软件质量和编程思想等方面论述了软件构建的各个问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。这本书中所论述的技术不仅填补了初级与高级编程技术之间的空白,而且也为程序员们提供了一个有关编程技巧的信息来源。这本书对经验丰富的程序员、技术带头人、自学的程序员及几乎不懂太多编程技巧的学生们都是大有裨益的。可以说,无论是什么背景的读者,阅读这本书都有助于在更短的时间内、更容易地写出更好的程序。
Foundations of Python Network Programming
Douban
John Goerzen / Tim Bower … publishing house: Apress 2010
This second edition of Foundations of Python Network Programming targets Python 2.5 through Python 2.7, the most popular production versions of the language. Python has made great strides since Apress released the first edition of this book back in the days of Python 2.3. The advances required new chapters to be written from the ground up, and others to be extensively revised. You will learn fundamentals like IP, TCP, DNS and SSL by using working Python programs; you will also be able to familiarize yourself with infrastructure components like memcached and message queues. You can also delve into Network server designs, and compare threaded approaches with asynchronous event-based solutions. But the biggest change is this edition's expanded treatment of the web. The HTTP protocol is covered in extensive detail, with each feature accompanied by sample Python code. You can use your HTTP protocol expertise by studying an entire chapter on screen scraping and you can then test lxml and BeautifulSoup against a real-world web site. The chapter on web application programming now covers both the WSGI standard for component interoperability, as well as modern web frameworks like Django. Finally, all of the old favorites from the first edition are back: E-mail protocols like SMTP, POP, and IMAP get full treatment, as does XML-RPC. You can still learn how to code Python network programs using the Telnet and FTP protocols, but you are likely to appreciate the power of more modern alternatives like the paramiko SSH2 library. If you are a Python programmer who needs to learn the network, this is the book that you want by your side. What you'll learn * Understand low level networking * Handle sending and receiving email including composing and decoding emails, SMTP, POP and IMAP * Program the lower levels of web application programming such as FastCGI and WSGI and HTTP itself * Learn how to use memcached and message qeues using Python * Access web services using Python * Master multitasking with threads, forking, and asynchronous communication Who this book is for This book will be of interest to python programmers who need to program networked applications using Python. From web application developers, to systems integrators, to system administrators--this book has everything you need to know. Table of Contents * Introduction to Client/Server Networking * UDP * TCP * Socket Names and DNS * Network Data and Network Errors * TLS and SSL * Server Architecture * Caches, Message Queues, and Map-Reduce * HTTP * Screen Scraping * Web Applications * E-mail Composition and Decoding * SMTP * POP * IMAP * Telnet and SSH * FTP * RPC
The Pragmatic Programmer
★ 8.9 7 ratings
Andrew Hunt / David Thomas publishing house: Addison-Wesley Professional 1999 - 10 other title: The Pragmatic Programmer: Your Journey to Mastery, 20th Anniversary Edition
Ward Cunningham Straight from the programming trenches, The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you’ll learn how to Fight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you’re a new coder, an experienced program.