Techniki programowania
W kategorii Techniki programowania znajdziecie książki dobrane pod względem merytorycznym zarówno dla amatorów jak i profesjonalistów z dziedziny programowania.
Dowiecie się jak poprawnie napisać i udokumentować własny kod oraz przeczytacie o najskuteczniejszych metodach refaktoryzacji czyli w jaki sposób poprawiać i optymalizować kod napisany przez innych programistów. Poznacie sposoby optymalizacji algorytmów, analizy złożoności, kompresji danych czy elementy algorytmiki grafów. Zaznajomicie się nie tylko z najlepszymi wzorcami w wytwarzaniu oprogramowania ale także nauczycie się rozpoznawać najczęstsze błędy i czyhające na Was pułapki.
Inżynieria odwrotna w praktyce. Narzędzia i techniki
Bruce Dang, Alexandre Gazet, Elias Bachaalany, Sébastien...
Inżynieria odwrotna pozwoli Ci na walkę z hakerami i rootkitami. Na użytkowników globalnej sieci czekają coraz wymyślniejsze pułapki. Każdego dnia grozi im zarażenie oprogramowaniem szpiegującym, rozsyłającym niechciane wiadomości lub wykorzystującym moc obliczeniową procesora do nieznanych celów. Wykrywanie tego typu zagrożeń i przeciwdziałanie im wymaga dogłębnej analizy niechcianego oprogramowania. Jak to zrobić? Na te i wiele innych pytań odpowiedzi dostarczy ta wspaniała książka! Dzięki niej zrozumiesz, jak działają procesory x86, x64 oraz ARM, zgłębisz tajniki jądra systemu Windows oraz poznasz najlepsze narzędzia, które wspomogą Cię w Twoich działaniach. W trakcie lektury kolejnych stron dowiesz się, jak korzystać z debuggera, jaką strukturę mają sterowniki oraz czym są pakiety żądań wejścia-wyjścia. Następnie dowiesz się, po co zaciemnia się kod oraz jakie narzędzia są do tego potrzebne. Techniką odwrotną do zaciemniania jest rozjaśnianie kodu. Zastanawiasz się, które narzędzia są skuteczniejsze? Przekonaj się sam! Ta pasjonująca lektura dostarczy Ci mnóstwo wiedzy na temat działania oprogramowania. Odkryj nowatorskie, usystematyzowane podejście do inżynierii zwrotnej oparte na analizie prawdziwego złośliwego oprogramowania. Poznaj szczegóły trzech najpopularniejszych architektur: x86, x64 i ARM. Zapoznaj się ze szczegółowo omówionymi zagadnieniami związanymi z jądrem systemu Windows oraz sterownikami działającymi w trybie jądra, które zostały opatrzone przykładowymi analizami prawdziwych rootkitów oraz ćwiczeniami. Opanuj skomplikowane techniki zaciemniania kodu takie jak te, które są stosowane w zabezpieczeniach mających postać maszyny wirtualnej. Dowiedz się jak analizować zabezpieczone programy. Odkryj zaawansowane techniki debugowania i automatyzacji, które przyśpieszą wykonywanie zadań związanych z inżynierią odwrotną. Przyjrzyj się jak profesjonaliści analizują programy. Zastosuj zdobytą wiedzę podczas samodzielnej analizy próbek prawdziwego złośliwego oprogramowania. Dowiedz się, jak działają exploity, wirusy, rootkity! Ich działanie można w pełni zrozumieć tylko poprzez inżynierię odwrotną...
Inżynieria oprogramowania. Jak zapewnić jakość tworzonym aplikacjom
Bogdan Bereza-Jarociński, Bolesław Szomański
Twórz rozwiązania najwyższej jakości! Ile kosztuje najwyższa jakość? Jak ją zapewnić? Jakie znaczenie ma bezpieczeństwo informacji? Inżynieria oprogramowania jest niezwykle obszerną dziedziną wiedzy, zajmującą się wszelkimi aspektami produkcji oprogramowania. Obejmuje zagadnienia takie, jak analiza, projektowanie czy też wdrożenie systemu informatycznego. Jeżeli kiedykolwiek spotkałeś się z oprogramowaniem miernej jakości, niewątpliwie na którymś z etapów jego produkcji pojawił się problem. Jak temu zapobiec? O tym właśnie traktuje ta książka. Dowiesz się z niej, jak unikać błędów, tak aby oprogramowanie, które wytworzysz, prezentowało najwyższą jakość! Poznasz podejście do kwestii jakości w czasach współczesnych oraz zobaczysz, jak temat ten był rozumiany wcześniej. Zdobędziesz wiedzę na temat miar używanych w inżynierii oprogramowania oraz najefektywniejszych metod i technik jego wytwarzania. Autor przedstawi Ci również narzędzia, które sprawią, że Twoje rozwiązania staną się jeszcze lepsze. Ponadto zobaczysz, jak ważne są tematy związane z bezpieczeństwem informacji. Warto podkreślić, że styl tej książki łączy lekkość i przyjemność lektury z poważną tematyką poruszanych w niej zagadnień. Jakość integralna Zarządzanie ryzykiem Zarządzanie procesami Cena jakości Spojrzenie na jakość wczoraj, dziś i jutro Zarządzanie jakością Socjologiczne i antropologiczne podejście do jakości Certyfikacja w inżynierii oprogramowania Najlepsze metody oraz techniki Dostępne narzędzia, automatyzacja testów Istota bezpieczeństwa informacji Spraw, aby Twoje aplikacje były najwyższej jakości!
Inżynieria oprogramowania według Google. Czego warto się nauczyć o tworzeniu oprogramowania
Titus Winters, Tom Manshreck, Hyrum Wright
Inżynieria oprogramowania jest pojęciem znacznie szerszym od kodowania: oznacza wszystkie niezbędne narzędzia i procesy stosowane przez organizację do tworzenia oprogramowania. To daje możliwość zachowania wartości kodu w dłuższej perspektywie czasu i pozwala ustanowić bardziej rygorystyczne zasady tworzenia oprogramowania, a dzięki temu sam kod jest podatniejszy na zmiany. Innymi słowy, inżynieria oprogramowania polega na optymalnym integrowaniu i organizowaniu tworzenia aplikacji ― od koncepcji, poprzez tworzenie, wdrażanie i utrzymywanie, po jej wycofywanie. To nie jest podręcznik dla programistów. Celem autorów jest zaprezentowanie jedynej w swoim rodzaju perspektywy firmy Google, od lat rozwijającej trwały ekosystem oprogramowania, co pozwoliło zebrać pożyteczne wnioski dotyczące skali działalności i czasu jej trwania. W książce zwrócono uwagę na to, że proces tworzenia oprogramowania jest wysiłkiem zespołowym, omówiono najlepsze praktyki związane z utrzymywaniem bazy kodu o dużych rozmiarach i długim stażu, pokazano także narzędzia, które mogą się okazać przydatne w jej utrzymywaniu. Omówione tu zagadnienia uwzględniają doświadczenia, jakie typowy inżynier oprogramowania zdobywa w ramach swojej pracy, służą też wskazaniu różnorodnych sposobów rozwiązywania poszczególnych problemów. Najciekawsze zagadnienia: unikatowa kultura pracy w Google procesy i narzędzia stosowane w Google metody zwiększania odporności kodu na upływ czasu wpływ skali oprogramowania na organizację pracy inżynierów kompromisy w procesie podejmowania decyzji projektowych Piszesz kod? To ważne zadanie - bierz przykład z najlepszych!
Rahat Khanna, Sani Yusuf, Hoc Phan
Hybrid Apps are a promising choice in mobile app development to achieve cost-effectiveness and rapid development. Ionic has evolved as the most popular choice for Hybrid Mobile App development as it tends to match the native experience and provides robust components/tools to build apps. The Ionic Complete Developers course takes you on an end–to-end journey, empowering you to build real-time, scalable, and interactive mobile applications with the Ionic framework. Starting with an introduction to the Ionic framework to get you up and running, you will gradually move on to setting up the environment, and work through the multiple options and features available in Ionic to build amazing hybrid mobile apps. You will learn how to use Cordova plugins to include native functionality in your hybrid apps.You will work through three complete projects and build a basic to-do list app, a London tourist app, and a complete social media app. All three projects have been designed to help you learn Ionic at its very best. From setting up your project to developing on both the server side and front end, and best practices for testing and debugging your projects, you'll quickly be able to deliver high-performance mobile apps that look awesome.You will then hone your skills with recipes for cross-platform development. Integrating Ionic with Cordova will bring you native device features, and you will learn about the best modules from its ecosystem. Creating components and customizing the theme will allow you to extend Ionic. You'll see how to build your app to deploy to all platforms to make you a confident start-to-finish mobile developer.This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products: [*] Getting Started with Ionic – by Rahat Khanna [*] Ionic by Example – by Sani Yusuf [*] Ionic Cookbook – by Hoc Phan
Ionic 2 Cookbook. The rich flavors of Ionic at your disposal - Second Edition
Hoc Phan
Developing real-time apps is the need of the hour, and apps that deal with humongous amounts of user data and real-time information that needs to be updated frequently are in high demand. Currently, one of the most popular frameworks for this task is Ionic Framework, which is undergoing a major makeover.This book will get you started with Ionic and help you create Angular 2 components that interact with templates. From there, you’ll work with Ionic components and find out how to share data efficiently between them. You’ll discover how to make the best use of the REST API to handle back-end services and then move on to animating the application to make it look pretty. You’ll learn to add in a local push notification in order to test the app. You’ll work with Cordova to support native functionalities on both iOS and Android. From there, you’ll get to grips with using the default themes for each platform as well as customizing your own. Finally, you’ll see how best to deploy your app to different platforms.This book will solve all your Ionic-related issues through dedicated recipes that will help you get the best out of Ionic.
Sani Yusuf
Change doesn’t have to be challenging. Sometimes it can be simple – sometimes it just makes sense. With Ionic, mobile development has never been so simple, so elegant and obvious. By helping developers to harness AngularJS and HTML5 for mobile development, it’s the perfect framework for anyone obsessed with performance, and anyone that understands just how important a great user experience really is. This book shows you how to get started with Ionic framework immediately. But it doesn’t just give you instructions and then expect you to follow them. Instead it demonstrates what Ionic is capable of through three practical projects you can follow and build yourself. From a basic to-do list app, a London tourist app, to a complete social media app, all three projects have been designed to help you learn Ionic at its very best. From setting up your project to developing on both the server side and front end, and best practices for testing and debugging your projects, you’ll quickly become a better mobile developer, delivering high performance mobile apps that look awesome. Ionic Framework by Example is for people who don’t want to learn now, build later – it’s for people who want to learn and build at the same time – so they can meet today’s mobile development challenges head on and deliver better products than anyone else.
iOS 10 Programming for Beginners. Explore the latest iOS 10 and Swift 3 features
Craig Clayton
You want to build iOS applications for iPhone and iPad—but where do you start? Forget sifting through tutorials and blog posts, this is a direct route into iOS development, taking you through the basics and showing you how to put the principles into practice. With every update, iOS has become more and more developer-friendly, so take advantage of it and begin building applications that might just take the App Store by storm!Whether you’re an experienced programmer or a complete novice, this book guides you through every facet of iOS development. From Xcode and Swift—the building blocks of modern Apple development—and Playgrounds for beginners, one of the most popular features of the iOS development experience, you’ll quickly gain a solid foundation to begin venturing deeper into your development journey. For the experienced programmer, jump right in and learn the latest iOS 10 features.You’ll also learn the core elements of iOS design, from tables to tab bars, as well as more advanced topics such as gestures and animations that can give your app the edge. Find out how to manage databases, as well as integrating standard elements such as photos, GPS into your app. With further guidance on beta testing with TestFlight, you’ll quickly learn everything you need to get your project on the App Store!
iOS 5 Essentials. Harness iOS 5's new powerful features to create stunning applications
Steven F. Daniel
Building on the phenomenal success of its predecessor iOS 5 includes over 200 new user features as well as an updated SDK containing over 1,500 new APIs. iOS 5 looks set to reinforce the iPhone's dominance in the smartphone market. iOS 5 Essentials will help you learn how to build simple, yet powerful iOS 5 applications incorporating iCloud Storage, Twitter, Core Image and Newsstand integration. You will start by learning about what's new in iOS 5. You'll look at the iCloud Storage APIs, Automatic Reference Counting, Twitter and AirPlay integration, how to use the various Core Image filters using the Cocoa framework, and the new features of the iOS 5 SDK. After this, you'll jump straight in and create applications using Xcode and Interface Builder using the new storyboard layout. We then finish up by learning how to make your applications run smoothly using the Xcode instruments.
Igor Uduslivii
Designing and selling games on the iOS platform has become a phenomenon ever since the introduction of the App Store. With mobile gaming taking the World by storm, users are indulging in all different types of games. iPhone Game Blueprints is a hands on guide to both inspire and help developers, graphic designers, and game enthusiasts to create their own games for iOS devices.Taking a selection of iPhone game styles we will learn how to set the foundation and essential functionality for each game. Including thorough explanations of popular games such as puzzles, arcades, and adventures, as well as useful theoretical and technical concepts. iPhone Game Blueprints is your complete guide to creating great iPhone games, from a simple gesture game to a classic shoot 'em up.iPhone Game Blueprints guides you through the universe of mobile games, starting with the overall information about game ideas, ergonomic aspects, and much more. Then it switches to a description of each particular game type, presenting ready-to-use ideas and applications.This book will take you through a selection of iPhone game styles and show how to create the foundation and essential functionality for a game of that genre.The examples in this book are only the beginning.Including a deluge of practical tips, focusing on the best approach to game design, not forgetting to mention the pitfalls. iPhone Game Blueprints will give you the blueprints of several mobile game's essentials cores. Whether you're just getting started with gaming, or want to try a whole different genre of game, these blueprints are everything you need.
IT Governance Publishing, Claire Agutter
This book offers a thorough guide to ITIL® 4’s Create, Deliver, and Support (CDS) module, covering key concepts and practices for IT service management. It begins with foundational aspects of the service value system (SVS), highlighting organizational structures, roles, and collaborative cultures essential for successful service delivery. The early chapters focus on adopting a shift-left approach to resource management, helping teams prioritize efficiency and proactive problem-solving.As the book progresses, it explores the strategic planning and management of resources within the SVS, stressing the importance of continual improvement and leveraging technology to optimize service management. It also provides insight into managing value streams for new services, guiding readers on how to create, manage, and measure service value chains for improved service delivery and innovation.The later chapters address specific ITIL® practices, such as service design, incident management, problem management, and knowledge management. The book concludes with exam preparation for ITIL® 4 CDS, offering practical case studies and real-world scenarios.By the end, readers will be equipped to enhance service management processes and ensure the delivery of high-quality IT services aligned with business objectives.
Jak stać się lepszym programistą. Przewodnik
Pete Goodliffe
Podręcznik prawdziwego programisty! Zawód programisty jak żaden inny wymaga ciągłego rozwoju, nauki i doskonalenia. Każdy dzień to nowe wyzwania, techniki programistyczne oraz kolejne linie wysokiej jakości kodu. Zastanawiasz się, co jeszcze możesz zrobić, aby stać się lepszym programistą? Chcesz zaimponować ciekawymi koncepcjami oraz wprowadzić znaczące ulepszenia w codziennej pracy? Trafiłeś na książkę, która sprawi, że Twój kod nabierze nowego blasku! Na kolejnych stronach tej książki przeczytasz o tym, jak powinien być sformatowany kod źródłowy, jakie stosować nazewnictwo oraz jak usuwanie zbędnego kodu wpływa na jego jakość. Nauczysz się odnajdywać błędy w kodzie i pisać dobre testy. Dowiesz się także, jak w pełni korzystać z możliwości systemu kontroli wersji. Książka ta jest obowiązkową lekturą dla każdego programisty ceniącego sobie ciągły rozwój, dążenie do doskonałości oraz tworzenie świetnego kodu! Techniki z poziomu kodu, dotyczące pisania wierszy kodu, testów, debugowania i radzenia sobie ze złożonością. Praktyki, podejścia i postawy: zachowaj prostotę, współpracuj z innymi, wykorzystuj gotowe rozwiązania i twórz elastyczny kod. Strategie skutecznego uczenia się, etycznego postępowania, szukania wyzwań i unikania stagnacji. Praktyczne metody kończenia zadań: używanie właściwych narzędzi, ustalanie, jak ma wyglądać gotowe rozwiązanie, i szukanie pomocy ze strony współpracowników. Nawyki dobrej współpracy z innymi i traktowania programowania jak zajęcia społecznego. Obowiązkowa lektura każdego programisty!
Peter Pilgrim
Digital Java EE 7 presents you with an opportunity to master writing great enterprise web software using the Java EE 7 platform with the modern approach to digital service standards. You will first learn about the lifecycle and phases of JavaServer Faces, become completely proficient with different validation models and schemes, and then find out exactly how to apply AJAX validations and requests. Next, you will touch base with JSF in order to understand how relevant CDI scopes work. Later, you’ll discover how to add finesse and pizzazz to your digital work in order to improve the design of your e-commerce application. Finally, you will deep dive into AngularJS development in order to keep pace with other popular choices, such as Backbone and Ember JS. By the end of this thorough guide, you’ll have polished your skills on the Digital Java EE 7 platform and be able to creat exiting web application.
Yogesh Prajapati, Vishal Ranapariya
This book will provide a useful hands-on guide to Hibernate to accomplish the development of a real-time Hibernate application.We will start with the basics of Hibernate, which include setting up Hibernate – the pre-requisites and multiple ways of configuring Hibernate using Java. We will then dive deep into the fundamentals of Hibernate such as SessionFactory, session, criteria, working with objects and criteria. This will help a developer have a better understanding of how Hibernate works and what needs to be done to run a Hibernate application. Moving on, we will learn how to work with annotations, associations and collections. In the final chapters, we will see explore querying, advanced Hibernate concepts and integration with other frameworks.
Java. Techniki zaawansowane. Wydanie X
Cay S. Horstmann
Java jest dojrzałym i bezpiecznym językiem programowania, który pozwala na tworzenie kodu działającego niezależnie od platformy. Jest przy tym cały czas konsekwentnie rozwijany przez firmę Oracle. Java w wersji SE 8 stała się innowacyjnym, nowoczesnym narzędziem o imponujących możliwościach. Aby w pełni wykorzystać szanse, które niesie Java SE 8, i tworzyć kod o wysokiej jakości, niezbędne jest pogłębione zrozumienie tego języka i konieczna jest gruntowna znajomość jego bibliotek. Książka ta jest kolejnym, gruntownie zaktualizowanym i przeorganizowanym wydaniem czołowego podręcznika dla poważnych programistów Javy, którzy chcą skorzystać z nowych możliwości języka. W tym drugim z dwóch tomów książki opisano zagadnienia zaawansowane, takie jak API strumieni, biblioteki do obsługi daty, czasu i kalendarzy, zaawansowane zastosowania biblioteki Swing czy zagadnienia związane z bezpieczeństwem. Przedstawiono również najlepsze praktyki programowania aplikacji. Co ważne, prezentacja zagadnień umożliwia ich łatwe zrozumienie i praktyczne zastosowanie. Najważniejsze zagadnienia ujęte w książce: biblioteka strumieni Javy 8 oraz strumienie wejścia-wyjścia tworzenie aplikacji sieciowych pracujących z użyciem protokołu HTTP interfejs JDBC i programowa obsługa baz danych interfejs programowy bezpieczeństwa i wykorzystanie algorytmów szyfrowania interfejs programowy Java 2D Java. Dojrzałe rozwiązania, profesjonalna jakość aplikacji!
Java Web Internals. Unlock the secrets of Java web servers, frameworks, and application architecture
Francisco Isidro Massetto, Bruno Souza
Ever wondered how web servers like Tomcat process requests, or what really happens behind frameworks such as Spring? This book takes you beneath the surface of Java web development to uncover the why behind the tools you use every day. Rather than focusing solely on coding recipes, this book emphasizes the underlying concepts and design principles that govern how web servers and frameworks operate. Starting with low-level socket programming, you’ll build a multithreaded HTTP server from the ground up and extend it into a lightweight application server capable of handling dynamic content. Along the way, you’ll master HTTP request parsing, response generation, servlet-like request handling, and Java reflection and annotations for metaprogramming. As you progress, you’ll evolve this infrastructure into your own Java framework with embedded Tomcat, annotation-driven routing, object serialization with Jackson, and basic dependency injection modeled on Jakarta CDI. By the end of this journey, you’ll understand the principles behind them, enabling you to reason about system design, troubleshoot complex issues, and apply these concepts across frameworks and programming languages.*Email sign-up and proof of purchase required
JavaScript : Moving to ES2015. Keep abreast of the practical uses of modern JavaScript
Ved Antani, Simon Timms, Narayan Prusty
JavaScript is a high-level, dynamic, untyped, lightweight, and interpreted programming language. Mastering modern JavaScript techniques and the toolchain are essential to develop web-scale applications. This Learning Path will upgrade your skills to ES2015, and you will get to introduce yourself to popular frameworks like React and Angular 2. In the first module, you will get familiar with the language constructs and how to make code easy to organize. You will gain a concrete understanding of variable scoping, loops, and best practices on using types and data structures, as well as the coding style and recommended code organization patterns in JavaScript. By the end of the module, you will understand how reactive JavaScript is going to be the new paradigm.Over the course of the next module, you will explore how design patterns can help you improve and organize your JavaScript code. You’ll get to grips with creational, structural, and behavioral patterns and get a deeper look at patterns used in functional programming, as well as model view patterns and patterns to build web applications. By the end of the module, you'll be saved of a lot of trial and error and developmental headaches, and you will be on the road to becoming a JavaScript expert.In the last leg of this course, you will shift your focus to network programming concepts as you build a real-time web application with websockets. Along the way, you’ll explore how the power of JavaScript can be increased multi-fold with high performance techniques. By the end of this module, you’ll be a skilled JavaScript developer with a solid knowledge of the latest JavaScript techniques, tools, and architecture to build modern web apps.This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products:? Mastering JavaScript by Ved Antani? Mastering JavaScript Design Patterns, Second Edition by Simon Timms? Modern JavaScript Applications by Narayan Prusty