BOOKS - PROGRAMMING - Mastering Java An Effective Project Based Approach including We...
Mastering Java An Effective Project Based Approach including Web Development, Data Structures, GUI Programming and Object Oriented Programming (Beginner to Advanced) - Michael B. White 2018 EPUB | RTF | PDF CONV Amazon Digital Services LLC BOOKS PROGRAMMING
ECO~23 kg CO²

2 TON

Views
18600

Telegram
 
Mastering Java An Effective Project Based Approach including Web Development, Data Structures, GUI Programming and Object Oriented Programming (Beginner to Advanced)
Author: Michael B. White
Year: 2018
Pages: 661
Format: EPUB | RTF | PDF CONV
File size: 10.1 MB
Language: ENG



Pay with Telegram STARS
The first section deals with the basics of Java programming and the second section deals with object-oriented programming. The third section deals with data structures and the fourth section deals with web development. The fifth section deals with GUI programming and the sixth and final section deals with advanced topics such as multithreading and networking. Mastering Java: An Effective Project-Based Approach = Introduction In today's fast-paced technological world, it is essential to stay up-to-date with the latest advancements in computer programming languages to remain relevant in the job market. One such language that has gained immense popularity in recent years is Java, a high-level programming language that has revolutionized the way we develop software applications. As a beginner or an experienced programmer, understanding the intricacies of Java programming can open doors to a wide range of career opportunities. This comprehensive guide, "Mastering Java: An Effective Project-Based Approach is designed to help you master the Java programming language, from the basics to advanced concepts, through practical project-based learning. Understanding Technology Evolution - Before diving into the world of Java programming, it is crucial to understand the technology evolution process. Technology has been the driving force behind human progress and has transformed the way we live, work, and communicate.
Первый раздел посвящен основам программирования на Java, а второй раздел - объектно-ориентированному программированию. Третий раздел посвящен структурам данных, а четвертый - веб-разработке. Пятый раздел посвящен программированию с помощью GUI, а шестой и последний раздел посвящен расширенным темам, таким как многопоточность и сетевое взаимодействие. Освоение Java: эффективный подход на основе проектов = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = Введение В современном быстро развивающемся технологическом мире важно быть в курсе последних достижений в языках компьютерного программирования, чтобы оставаться актуальным на рынке труда. Одним из таких языков, который приобрел огромную популярность в последние годы, является Java, язык программирования высокого уровня, который произвел революцию в том, как мы разрабатываем программные приложения. Как начинающий или опытный программист, понимание тонкостей программирования на Java может открыть двери для широкого спектра карьерных возможностей. Это всеобъемлющее руководство «Освоение Java: эффективный подход на основе проектов» предназначено для того, чтобы помочь вам освоить язык программирования Java, от основ до расширенных концепций, посредством практического обучения на основе проектов. Понимание эволюции технологий - Прежде чем погружаться в мир программирования на Java, крайне важно понять процесс эволюции технологий. Технологии были движущей силой человеческого прогресса и изменили то, как мы живем, работаем и общаемся.
La première section est consacrée aux bases de la programmation en Java et la deuxième section à la programmation orientée objet. La troisième section porte sur les structures de données et la quatrième sur le développement Web. La cinquième section est consacrée à la programmation par GUI, et la sixième et dernière section est consacrée à des sujets avancés tels que le multithread et le réseautage. La mise en valeur Java : l'approche effective à la base des projets = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = l'Introduction Dans le monde technologique en évolution rapide d'aujourd'hui, il est important de se tenir au courant des dernières avancées dans les langages de programmation informatique afin de rester pertinent sur le marché du travail. L'un de ces langages, qui a acquis une grande popularité ces dernières années, est Java, un langage de programmation de haut niveau qui a révolutionné la façon dont nous développons les applications logicielles. En tant que programmeur débutant ou expérimenté, comprendre les subtilités de la programmation en Java peut ouvrir la porte à un large éventail de possibilités de carrière. Ce guide complet « Maîtriser Java : une approche efficace basée sur des projets » est conçu pour vous aider à apprendre le langage de programmation Java, des bases aux concepts avancés, en passant par l'apprentissage pratique basé sur des projets. Comprendre l'évolution des technologies - Avant de plonger dans le monde de la programmation en Java, il est essentiel de comprendre le processus d'évolution des technologies. La technologie a été le moteur du progrès humain et a changé notre façon de vivre, de travailler et de communiquer.
La primera sección se centra en los fundamentos de la programación en Java y la segunda sección en la programación orientada a objetos. La tercera sección se centra en las estructuras de datos y la cuarta en el desarrollo web. La quinta sección se centra en la programación mediante GUI, mientras que la sexta y última sección se centra en temas avanzados, como los subprocesos múltiples y las redes. Masterización de Java: enfoque efectivo basado en proyectos = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = Introducción - En el mundo tecnológico en rápida evolución de hoy, es importante estar al tanto de los últimos avances en los lenguajes de programación informática para mantenerse al día en el mercado laboral. Uno de estos lenguajes que ha ganado enorme popularidad en los últimos es Java, un lenguaje de programación de alto nivel que ha revolucionado la forma en que desarrollamos aplicaciones de software. Como programador principiante o experimentado, comprender las sutilezas de la programación en Java puede abrir las puertas a una amplia gama de oportunidades profesionales. Esta guía integral «Dominar Java: un enfoque eficaz basado en proyectos» está diseñada para ayudarle a dominar el lenguaje de programación Java, desde conceptos básicos hasta conceptos avanzados, a través de aprendizaje práctico basado en proyectos. La comprensión de la evolución de las tecnologías- Antes de sumirse en el mundo de la programación en Java, es extremadamente importante comprender el proceso de la evolución de las tecnologías. La tecnología ha sido la fuerza impulsora del progreso humano y ha cambiado la forma en que vivimos, trabajamos y comunicamos.
A primeira seção é sobre a programação básica em Java e a segunda seção sobre a programação focada em objetos. A terceira seção é dedicada às estruturas de dados e a quarta, ao desenvolvimento da Web. A quinta seção é dedicada à programação GUI e a sexta e última seção é dedicada a temas avançados, tais como multiplosição e interação de rede. Aprendizado Java: Abordagem eficaz baseada em projetos = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = - No mundo tecnológico em desenvolvimento moderno, é importante estar informado sobre os avanços recentes nos idiomas de programação do computador para se manter atualizado no mercado de trabalho. Uma dessas línguas que ganhou enorme popularidade nos últimos anos é Java, uma linguagem de programação de alto nível que revolucionou a forma como desenvolvemos aplicativos de software. Como um programador iniciante ou experiente, entender as sutilezas da programação em Java pode abrir portas para uma ampla gama de oportunidades de carreira. Este guia abrangente «Aprendendo o Java: uma abordagem eficaz baseada em projetos» é projetado para ajudá-lo a aprender a linguagem de programação Java, dos fundamentos aos conceitos avançados, através de treinamento prático baseado em projetos. Compreender a evolução da tecnologia - Antes de mergulhar no mundo da programação em Java, é fundamental compreender o processo de evolução da tecnologia. A tecnologia foi o motor do progresso humano e mudou a forma como vivemos, trabalhamos e nos comunicamos.
La prima sezione è dedicata alla programmazione basata su Java e la seconda alla programmazione orientata agli oggetti. La terza sezione è dedicata alle strutture dei dati e la quarta allo sviluppo web. La quinta sezione è dedicata alla programmazione con GUI, mentre la sesta e ultima sezione riguarda argomenti avanzati quali il multitasking e l'interazione di rete. Apprendimento Java: approccio efficace basato su progetti = = = = = = = = = = = = = = = = = = = = = = = = = In un mondo tecnologico in continua evoluzione, è importante essere aggiornati sui recenti progressi nei linguaggi della programmazione informatica per rimanere aggiornati sul mercato del lavoro. Uno di questi linguaggi che negli ultimi anni è diventato molto popolare è Java, un linguaggio di programmazione di alto livello che ha rivoluzionato il modo in cui sviluppiamo le applicazioni software. Come programmatore principiante o esperto, la comprensione delle finezze di programmazione su Java può aprire le porte a una vasta gamma di opportunità di carriera. Questa guida completa «Imparare Java: un approccio efficace basato su progetti» è progettata per aiutarvi a imparare il linguaggio di programmazione Java, dalle basi ai concetti avanzati, attraverso la formazione pratica basata su progetti. Comprensione dell'evoluzione della tecnologia È fondamentale comprendere l'evoluzione della tecnologia prima di immergersi nel mondo della programmazione su Java. La tecnologia è stata il motore del progresso umano e ha cambiato il modo in cui viviamo, lavoriamo e comunichiamo.
Der erste Abschnitt behandelt die Grundlagen der Java-Programmierung und der zweite Abschnitt die objektorientierte Programmierung. Der dritte Abschnitt konzentriert sich auf Datenstrukturen und der vierte auf die Webentwicklung. Der fünfte Abschnitt konzentriert sich auf GUI-basierte Programmierung und der sechste und letzte Abschnitt konzentriert sich auf erweiterte Themen wie Multithreading und Vernetzung. Java Mastering: Ein effizienter projektbasierter Ansatz = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = Einleitung In der heutigen schnelllebigen technologischen Welt ist es wichtig, über die neuesten Fortschritte in Computerprogrammiersprachen auf dem Laufenden zu bleiben, um auf dem Arbeitsmarkt relevant zu bleiben. Eine solche Sprache, die in den letzten Jahren enorm an Popularität gewonnen hat, ist Java, eine hochentwickelte Programmiersprache, die die Art und Weise, wie wir Softwareanwendungen entwickeln, revolutioniert hat. Als Anfänger oder erfahrener Programmierer kann das Verständnis der Feinheiten der Programmierung in Java die Tür zu einer Vielzahl von Karrieremöglichkeiten öffnen. Dieser umfassende itfaden „Mastering Java: A Efficient Project-Based Approach“ soll Ihnen helfen, die Programmiersprache Java von den Grundlagen bis zu fortgeschrittenen Konzepten durch praktisches, projektbasiertes rnen zu beherrschen. Verstehen der Technologieentwicklung - Bevor e in die Welt der Java-Programmierung eintauchen, ist es wichtig, den Prozess der Technologieentwicklung zu verstehen. Technologie war die treibende Kraft hinter dem menschlichen Fortschritt und hat die Art und Weise verändert, wie wir leben, arbeiten und kommunizieren.
Pierwsza sekcja dotyczy podstaw programowania Java, a druga dotyczy programowania zorientowanego na obiekty. Trzecia sekcja skupia się na strukturach danych, a czwarta na rozwoju sieci. Piąta sekcja zajmuje się programowaniem GUI, natomiast szósta i ostatnia zajmuje się zaawansowanymi tematami, takimi jak multitreading i networking. Mastering Java: skuteczne podejście oparte na projekcie = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = W dzisiejszym szybko rozwijającym się świecie technologicznym, ważne jest, aby śledzić najnowsze osiągnięcia w językach programowania komputerowego, aby pozostać istotnym na rynku pracy. Jednym z takich języków, który zyskał ogromną popularność w ostatnich latach jest Java, język programowania na wysokim poziomie, który zrewolucjonizował sposób, w jaki rozwijamy oprogramowanie. Jako początkujący lub wykwalifikowany programista, zrozumienie zawiłości programowania Java może otworzyć drzwi do szerokiego zakresu możliwości kariery. Ten kompleksowy przewodnik, „Mastering Java: An Effective Project-Based Approach”, został zaprojektowany, aby pomóc Ci opanować język programowania Java, od podstaw po zaawansowane koncepcje, poprzez praktyczne, oparte na projektach uczenie się. Zrozumienie ewolucji technologii - Przed wejściem do świata programowania Java, konieczne jest zrozumienie ewolucji technologii. Technologia jest motorem postępu człowieka i zmieniła sposób życia, pracy i komunikacji.
החלק הראשון עוסק ביסודות של תכנות Java, והחלק השני עוסק בתכנות מונחה עצמים. החלק השלישי מתמקד במבני נתונים והרביעי בפיתוח אתרים. החלק החמישי עוסק בתכנות GUI, בעוד שהחלק השישי והאחרון עוסק בנושאים מתקדמים כמו ריבוי רשתות. מאסטרינג ג 'אווה: גישה יעילה המבוססת על פרוייקטים - - - - - בעולם הטכנולוגי המתפתח במהירות של היום, זה חשוב לשמור על מעודכן של ההתפתחויות האחרונות בשפות תכנות מחשב על מנת להישאר רלוונטי בשוק העבודה. שפה כזו שצברה פופולריות עצומה בשנים האחרונות היא Java, שפת תכנות ברמה גבוהה שחוללה מהפכה בדרך בה אנו מפתחים יישומי תוכנה. כמתכנת טירון או מיומן, הבנת המורכבות של תכנות Java יכולה לפתוח את הדלת למגוון רחב של הזדמנויות קריירה. מדריך מקיף זה, "Mastering Java: An Effective Project-Based Approcess', נועד לעזור לך לשלוט בשפת התכנות Java, מיסודות למושגים מתקדמים, באמצעות למידה מבוססת פרוייקטים. הבנת התפתחות הטכנולוגיה - - - - - - - - - - - - - - לפני הצלילה לתוך העולם של תכנות ג 'אווה, זה הכרחי כדי להבין את האבולוציה של הטכנולוגיה. הטכנולוגיה נהגה בהתקדמות האנושית ושינתה את אורח חיינו, עבודתנו ותקשורתנו.''
İlk bölüm Java programlamanın temelleri ile ilgilenir ve ikinci bölüm nesne yönelimli programlama ile ilgilenir. Üçüncü bölüm veri yapılarına, dördüncü bölüm ise web geliştirmeye odaklanmaktadır. Beşinci bölüm GUI programlama ile ilgilenirken, altıncı ve son bölüm çoklu okuma ve ağ oluşturma gibi gelişmiş konularla ilgilenir. Java'da uzmanlaşmak: etkili bir proje tabanlı yaklaşım = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = Giriş Günümüzün hızla gelişen teknolojik dünyasında, işgücü piyasasında alakalı kalabilmek için bilgisayar programlama dillerindeki en son gelişmelerden haberdar olmak önemlidir. Son yıllarda muazzam bir popülerlik kazanan böyle bir dil, yazılım uygulamaları geliştirme biçimimizde devrim yaratan üst düzey bir programlama dili olan Java'dır. Acemi veya yetenekli bir programcı olarak, Java programlamanın inceliklerini anlamak, çok çeşitli kariyer fırsatlarına kapı açabilir. "Mastering Java: An Effective Project-Based Approach" (Java'ya Hakim Olmak: Etkili Bir Proje Tabanlı Yaklaşım) adlı bu kapsamlı kılavuz, temellerden gelişmiş kavramlara, uygulamalı, proje tabanlı öğrenme yoluyla Java programlama dilini öğrenmenize yardımcı olmak için tasarlanmıştır. Teknolojinin evrimini anlamak - Java programlama dünyasına dalmadan önce, teknolojinin evrimini anlamak zorunludur. Teknoloji, insanlığın ilerlemesinin itici gücü olmuştur ve yaşama, çalışma ve iletişim biçimimizi değiştirmiştir.
يتناول القسم الأول أساسيات برمجة جاوة، ويتناول القسم الثاني البرمجة الكائنية. ويركز الفرع الثالث على هياكل البيانات والرابع على تطوير شبكة الإنترنت. ويتناول القسم الخامس برمجة واجهة المستخدم الرسومية، بينما يتناول القسم السادس والأخير مواضيع متقدمة مثل القراءة المتعددة والربط الشبكي. = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = - في العالم التكنولوجي سريع التطور اليوم، من المهم مواكبة آخر التطورات في لغات برمجة الكمبيوتر من أجل الحفاظ على أهميتها في سوق العمل. إحدى هذه اللغات التي اكتسبت شعبية هائلة في السنوات الأخيرة هي Java، وهي لغة برمجة عالية المستوى أحدثت ثورة في الطريقة التي نطور بها تطبيقات البرامج. كمبرمج مبتدئ أو ماهر، فإن فهم تعقيدات برمجة جافا يمكن أن يفتح الباب لمجموعة واسعة من الفرص المهنية. تم تصميم هذا الدليل الشامل، «إتقان جافا: نهج فعال قائم على المشروع»، لمساعدتك على إتقان لغة برمجة جافا، من الأساسيات إلى المفاهيم المتقدمة، من خلال التعلم العملي القائم على المشروع. فهم تطور التكنولوجيا قبل الغوص في عالم برمجة جافا، من الضروري فهم تطور التكنولوجيا. لقد كانت التكنولوجيا محركًا للتقدم البشري وغيرت الطريقة التي نعيش ونعمل ونتواصل بها.
첫 번째 섹션은 Java 프로그래밍의 기본 사항을 다루고 두 번째 섹션은 객체 지향 프로그래밍을 다룹니다. 세 번째 섹션은 데이터 구조와 네 번째 웹 개발에 중점을 둡니다. 다섯 번째 섹션은 UI 프로그래밍을, 여섯 번째 및 마지막 섹션은 멀티 스레딩 및 네트워킹과 같은 고급 주제를 다룹니다. 자바 마스터 링: 효과적인 프로젝트 기반 접근 방식 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 오늘날의 빠르게 발전하는 기술 세계에서 노동 시장과의 관련성을 유지하기 위해 컴퓨터 프로그래밍 언어의 최신 개발을 파악하는 것이 중요합니다. 최근 몇 년 동안 엄청난 인기를 얻은 언어 중 하나는 소프트웨어 응용 프로그램 개발 방식에 혁명을 일으킨 고급 프로그래밍 언어 인 Java입니다. 초보자 또는 숙련 된 프로그래머로서 Java 프로그래밍의 복잡성을 이해하면 광범위한 직업 기회가 열릴 수 있습니다. 이 포괄적 인 가이드 인 "Mastering Java: 효과적인 프로젝트 기반 접근 방식" 은 기본에서 고급 개념에 이르기까지 프로젝트 기반 학습을 통해 Java 프로그래밍 언어를 마스터 할 수 있도록 설계되었습니다. 자바 프로그래밍의 세계로 뛰어 들기 전에 기술의 진화를 이해하는 것이 필수적입니다. 기술은 인간 발전의 원동력이었으며 우리가 살고 일하고 의사 소통하는 방식을 바 꾸었습니다.
最初のセクションではJavaプログラミングの基本を扱い、2番目のセクションではオブジェクト指向プログラミングを扱います。3番目のセクションでは、データ構造に焦点を当て、4番目はWeb開発に焦点を当てています。5番目のセクションではGUIプログラミング、6番目と最後のセクションではマルチスレッドやネットワーキングなどの高度なトピックを扱っています。Javaのマスタリング:効果的なプロジェクトベースのアプローチ= -今日急速に発展している技術の世界では、労働市場で関連性を維持するために、コンピュータプログラミング言語の最新の動向を把握することが重要です。近絶大な人気を博している言語の1つは、ソフトウェアアプリケーションの開発に革命をもたらしたハイレベルなプログラミング言語であるJavaです。初心者や熟練したプログラマーとして、Javaプログラミングの複雑さを理解することは、幅広いキャリアの機会への扉を開くことができます。この包括的なガイド「Mastering Java: An Effective Project-Based Approach」は、プロジェクトベースの実践的な学習を通じて、基礎から高度な概念まで、Javaプログラミング言語を習得するのに役立つように設計されています。技術の進化を理解するJavaプログラミングの世界に飛び込む前に、技術の進化を理解することは不可欠です。テクノロジーは人間の進歩の原動力であり、私たちの生活、仕事、コミュニケーションのあり方を変えてきました。
第一部分涉及Java編程的基礎,第二部分涉及面向對象的編程。第三部分涉及數據結構,第四部分涉及基於Web的開發。第五部分涉及使用GUI進行編程,第六部分也是最後一部分涉及高級主題,例如多線程和網絡。開發Java:基於項目的有效方法導言導言。 在當今快速發展的技術世界中,跟上計算機編程語言的最新進展非常重要,以便在勞動力市場上保持相關性。其中一種近來廣受歡迎的語言是Java,這種高級編程語言徹底改變了我們開發軟件應用程序的方式。作為有抱負或經驗豐富的程序員,了解Java編程的復雜性可以為廣泛的職業機會打開大門。這本全面的指南「學習Java:一種有效的基於項目的方法」旨在幫助您通過基於項目的實踐培訓來掌握Java編程語言,從基礎知識到擴展概念。了解技術的演變在深入了解Java編程世界之前,了解技術的演變過程至關重要。技術一直是人類進步的推動力,改變了我們的生活、工作和溝通方式。

You may also be interested in:

Mastering Java An Effective Project Based Approach including Web Development, Data Structures, GUI Programming and Object Oriented Programming (Beginner to Advanced)
Java 21#Game-Changer Chronicles -: A Case Study Approach ( Hands-on project use-cases ): Core Java. Java Virtual Threads. Java Collections.
Java 21#Game-Changer Chronicles - A Case Study Approach ( Hands-on project use-cases ) Core Java. Java Virtual Threads
Java 21#Game-Changer Chronicles - A Case Study Approach ( Hands-on project use-cases ) Core Java. Java Virtual Threads
Microsoft Dynamics 365 Project Operations: Deliver profitable projects with effective project planning and productive operational workflows
Basics of Java and Advance Java Project: Attend 10 Interview Get 5 Offer Letter from a Software Company
Basics of Java and Advance Java Project Attend 10 Interview Get 5 Offer Letter from a Software Company
Basics of Java and Advance Java Project Attend 10 Interview Get 5 Offer Letter from a Software Company
Mastering Secure Java Applications Navigating security in cloud and microservices for Java
Mastering Secure Java Applications Navigating security in cloud and microservices for Java
Mastering Secure Java Applications: Navigating security in cloud and microservices for Java (English Edition)
Mastering Java Persistence API (JPA): Realize Java|s Capabilities Spanning RDBMS, ORM, JDBC, Caching, Locking, Transaction Management, and JPQL
Java Algorithms Interview Challenger Ace Java Interviews by Mastering Fundamentals of Data Structures and Algorithms
Effective Java (3rd Edition)
Effective Unit Testing A guide for Java developers
Gameful Project Management: Self-Gamification Based Awareness Booster for Your Project Management Success (Gameful Life Book 1)
Java Challengers Master the Java Fundamentals with fun Java Code Challenges! Become a Java Challenger!
Java Challengers Master the Java Fundamentals with fun Java Code Challenges! Become a Java Challenger!
Mastering Corda Blockchain for Java Developers
Mastering Corda: Blockchain for Java Developers
Mastering Lambdas Java Programming in a Multicore World
Transforming History: A Guide to Effective, Inclusive, and Evidence-Based Teaching
Robotics A Project-Based Approach
Getting Started With Java Using Eclipse mastering the Language and the Development Platform
Effective School Interventions: Evidence-Based Strategies for Improving Student Outcomes
Effective Kafka A Hands-On Guide to Building Robust and Scalable Event-Driven Applications with Code Examples in Java
PIC in Practice A Project-based Approach
AutoCAD 2020 A Project-Based Tutorial
Real-World Software Development: A Project-Driven Guide to Fundamentals in Java
Real-World Software Development A Project-Driven Guide to Fundamentals in Java
Large Language Model-Based Solutions How to Deliver Value with Cost-Effective Generative AI Applications
Large Language Model-Based Solutions How to Deliver Value with Cost-Effective Generative AI Applications
PIC Projects and Applications using C A Project-based Approach
Simple Arduino based 4 Floor Elevator project
Wicked Cool Java Code Bits, Open Source Libraries, and Project Ideas
Project-Based Learning (English Language Teacher Development)
Project and Program Management A Competency-Based Approach, Third Edition
Kotlin from Scratch A Project-Based Introduction for the Intrepid Programmer
Ubuntu Made Easy A Project-based Introduction to Linux
Practical MATLAB Deep Learning: A Project-Based Approach