Comments
Description
Transcript
Internet Programming and Development
engineering & Technology yo u r U C i n S i l i c o n Va l l e y Internet Programming and Development Keep pace with the rapid evolution of Web technologies by studying with the experts at UCSC Silicon Valley Extension. Our Internet Programming and Development certificate program offers comprehensive training geared to developers working on e-commerce, enterprise applications, interactive websites and cloud applications. Courses cover all major platforms and frameworks, including Java Enterprise Edition, Microsoft ASP.NET, as well as major open source options, such as LAMP, Ruby on Rails, and MEAN stack. We offer training on Internet programming languages, server development, Rich Internet Applications (RIA) or dynamic Web technologies, cloud services, Web app testing and e-commerce security. ucsc-extension.edu/ engineering C# .NET Programming, Comprehensive Internet Programming and Development Certificate Certificate Requirements To obtain the Certificate in Internet Programming and Development, you must complete a minimum total of 14 units, including one of three core courses. One related outside elective or “Also of Interest” course may be counted toward the certificate upon department approval. GPA: 3.0 with a C or better in all courses. Prerequisites Familiarity with a programming language is required. General knowledge of databases, browsers, and the Web is assumed. Recommended Course Sequence Students should follow the recommended prerequisites or skills needed of each course. The sequence may vary based on student background and professional interest. Note: Some courses may be listed in more than one program. However, only one course may be shared between two Engineering and Technology certificate programs unless otherwise noted. Program Contact Engineering and Technology Department, (408) 861-3860 or email [email protected] Curriculum *Choose one of three core courses UnitsCourse Working With the Web Web Technologies, Introduction................. 1.0.......22623 Cloud Computing, Introduction................. 0.5.......22413 Programming for Cloud Computing Amazon Web Services................................ 2.0.......23094 Web Applications Testing, Comprehensive.... 3.0.......30355 User Experience Design Fundamentals ..... 3.0.......30031 Mobile Payments, e-Commerce Security, and Cryptocurrency ................................... 3.0.......30319 Java EE Framework *Developing Java and Java EE Applications with Spring Framework and Hibernate............................................ 3.0.......20063 Java Programming, Comprehensive........... 3.0.........6634 Rich Internet Applications Introduction to Web Programming: JavaScript and PHP ................................... 2.0.......30298 *JavaScript and AJAX, Comprehensive........ 3.0.........1500 Developing JavaScript-based Rich Web UI with JQuery........................... 2.0.......22865 Developing Mobile Applications for Multiple Platforms..................................... 3.0.......30357 Multimedia Fundamentals......................... 2.0.......30358 Windows Framework C# .NET Programming, Comprehensive..... 3.0.........5408 C# .NET Programming, Advanced.............. 3.0.......19026 Open Source Framework *Linux Based Web Application Development—Apache, MySQL, PHP........ 3.0.......21958 Ruby and Ruby on Rails............................. 2.0.......21342 Web Framework Using JavaScript: The MEAN Stack........................................ 3.0.......30377 Enrollment Information Visit ucsc-extension.edu/engineering for the most up-to-date information about our courses and programs, including textbooks, instructors, schedules and locations. Enroll online at ucsc-extension.edu. Internet Programming Languages Java Programming for Beginners............... 2.0.........5185 Perl Programming, Comprehensive............ 2.0.........2110 Python Programming for Beginners........... 1.5.......20776 Python for Programmers............................ 3.0.........3064 HTML Fundamentals.................................. 2.0.......20816 HTML5: The Living Language..................... 3.0.......30046 Designing with Cascading Style Sheets, Fundamentals............................................ 1.5.........6673 Designing with Cascading Style Sheets, Advanced................................................... 1.5.......21317 XML Essentials........................................... 2.0.........3279 Copyright © 2015 The Regents of the University of California. All rights reserved. This course introduces beginning and intermediate programmers to .NET programming using Microsoft’s C# programming language. The instructor explains the Visual Studio development environment and reviews the basic constructs of C# language with detailed explanations of the C# regular expressions, delegates, events, generics and collections. The course also covers exception handling, threading and synchronization. The instructor will present real-world code examples in class and use sample applications to illustrate core concepts. Course 5408 C# .NET Programming, Advanced For students who have learned the basic C# language and the C#.NET integrated development environment, this course provides an opportunity to extend their C# and .NET skills by learning advanced C# features and programming techniques. The course introduces the components of the .NET framework, database connectivity and Web application development. Topics include object-oriented programming, multithreaded programming, object serialization, database connectivity, LINQ, manipulating XML, and .NET programming with SQL server. Course 19026 Cloud Computing, Introduction This course introduces the concepts and technologies involved in cloud computing, which refers to scalable and virtualized computing over the Internet. The course surveys technologies deployed by Amazon, Google, Microsoft, and various academic and opensource providers. It explains how cloud computing services can provide on-demand access to data storage, computing resources, and messaging. You’ll also learn about the enabling technologies (Web 2.0, virtualization, grid and utility computing) that comprise the infrastructure behind a cloud computing service. You’ll get to examine case studies and technicalbusiness models. Course 22413 Designing with Cascading Style Sheets, Fundamentals Cascading style sheets (CSS) are a mandatory method for a Web designer to control the look and feel of a modern website. Combined with proper HTML markup, CSS allows for precise control over a Web page’s appearance without the use of tables. This beginning course provides demonstration and hands-on exercises covering the application and syntax of CSS; hand-coding CSS properties for font, Info Info Session for Software Development Programs Session This free event is an informal session for new or returning students who are interested in our Computer Programming, Internet Programming and Development, Software Engineering and Quality, and Linux Programming and Administration programs. The event includes a short overview of Extension and discusses the highlights of courses in each software program. Program staff or a senior instructor will be available to answer your questions about courses and recommended course sequences. This is an excellent opportunity to receive course information for upcoming quarters. Register early to reserve your space. Course 22404 To learn more, visit ucsc-extension.edu/events. text formatting and backgrounds; the box model; creating vertical and horizontal navigation menus and two and three column page-layouts. Course 6673 Designing with Cascading Style Sheets: Advanced This course provides an in-depth exploration into the expanding world of Cascading Style Sheets (CSS), covering responsive website designs that work with smartphone, tablet or desktop monitors. Lectures and hands-on exercises cover essential CSS3 properties, concepts, techniques, and applications of media queries, styling forms, fonts and structural pseudoclasses. You will also learn how to handle browser compatibility issues and utilize the greater capabilities now available through CSS. Course 21317 Developing Mobile Applications for Multiple Platforms This course introduces a hybrid approach to developing mobile applications that are portable to multiple devices. After reviewing cross-platform development fundamentals, including HTML5, JavaScript, and CSS, the course introduces the PhoneGap tool and its tool architecture, flow, testing and debugging capabilities. You will learn the various APIs that PhoneGap provides to access the smartphone camera, sensors, geolocation, storage, files and events. By integrating Sencha Touch with PhoneGap, you will see that additional components and libraries are available. Additional topics include controller, event and data handling. You’ll need to program in JavaScript and HTML5 to complete an in-class project. Course 30357 Developing Java and Java EE Applications with Spring Framework and Hibernate * This course introduces tools for developing Java EE applications and covers the core concepts of Spring, including Inversion of Control (IoC) and dependency injection. You will learn by building a sample Java EE application that creates RESTful Web services using JAX-RS, as well as the Tomcat application server and MySQL database. You will learn how to work with databases using Hibernate and gain hands-on experience with open-source and demo tools, servers and databases. Advanced topics include scaling concepts and Web services security via OAuth. Laptops are required in class. Course 20063 Developing JavaScript-based Rich Web UI with JQuery JQuery is a JavaScript library that simplifies the rapid development of rich Web applications. JQuery can be used in Web applications regardless of the language or technology employed on the server side. After an overview of the JQuery framework, this course reviews the inner workings of document object model (DOM) and HTML content, including traversal, modification, user interactions and event handling. You’ll learn to leverage the browser event model, perform AJAX requests, add effects and animations, use JQuery plug-ins, and work with CSS and form data. Course 22865 HTML Fundamentals In this hands-on course, you’ll learn to code HyperText Markup Language (HTML) to meet the most current standards and practices of coding as set by the World Wide Web Consortium (W3C). It covers all the major topics of coding and validating HTML, including meeting accessibility mandates and improving search engine optimization (SEO). The course also examines the new elements introduced by HTML5. The course is for students who have not coded Web pages before, as well as for those who would like to review and update their HTML coding skills. Course 20816 HTML5: The Living Language An increasing number of companies are using HTML5 to develop Web and mobile applications. This course demystifies HTML5 and its powerful features. You will gain experience with redefined Web forms, new extended audio and video controls, new page structures and syntax. You’ll learn and practice “meaningful markup”, new canvas drawing methods, drag and drop, data storage methods, new JavaScript and CSS3 implementations, as well as geolocation and mobile application frameworks. The course includes a series of in-class exercises and lessons with homework. Course 30046 Introduction to Web Programming: JavaScript and PHP This introductory course covers basic concepts and programming skills that you need to know to program dynamic Web pages, showcasing and analyzing demos of dynamic Web pages that use JavaScript and PHP. It covers basic programming syntaxes such as variables, data types, expressions and operators, and strings. You’ll discuss functions, events, decision making and repetition, and you’ll learn to build forms and objects, take inputs and reset forms. When using PHP for server-side scripting, you’ll also learn to handle user input and process form data, creating an all-in-one form. Course 30298 Java Programming for Beginners This course is an introduction to Java programming, starting with programming concepts and Eclipse IDE. The instructor introduces basic and intermediate Java syntax, and then methodically addresses abstraction, object-oriented paradigm, procedural programming, elementary data structures, and more. Other useful topics include graphics user interface, collections and generics. You will gain a strong conceptual foundation in these areas while starting to write programs for real applications. The course includes programming exercises. Course 5185 Java Programming, Comprehensive Java is the premier language for Web servers, enterprise servers, network applications, embedded devices, appliances and wireless applications. This course covers the Java fundamentals, including language syntax, constructs, and the development environment. It also extends to the Java platform, including client/ server communication and managing XML data. The course begins with Java’s implementation of object-oriented concepts such as classes, data and function access controls and inheritance. You’ll build graphical user interfaces and program in the Java event-handling model. Additional topics include the Java class library, collection frameworks, Internet communication, and multithreaded programming. Course 6634 JavaScript and AJAX, Comprehensive * This comprehensive course covers JavaScript as a programming language for creating dynamic Web pages. After getting up to speed with the language syntax, data types, operators, and programming constructs, you’ll learn how to create and manipulate objects and write functions to handle user-initiated events such as mouse rollovers, clicking on a link, or submitting a form. You’ll learn the Document Object Model and how to walk the W3C DOM tree, manage nodes, and use event listeners. Topics include JS frameworks and AJAX to create asynchronous calls to the Web for fast interactivity. Course 1500 Courses continue on reverse… Linux Based Web Application Development-Apache, MySQL, PHP * Linux, Apache, MySQL and PHP, collectively known as LAMP, comprise the majority of servers, databases and scripting languages on the Internet today. LAMP belongs to open-source and is very robust and easily configured. This course teaches LAMP basics including installation, deployment and development of a website. You will learn the basics of programming MySQL (a popular Web database) and PHP (Hypertext Preprocessor, a website scripting language). You will learn to develop basic to intermediate level 3-tier websites and Web applications with a database in the back-end. Course 21958 Mobile Payments, e-Commerce Security, and Cryptocurrency This introductory course covers advancements in mobile payment and transaction security and will help you engage in platform and application development or pursue new market opportunities. You will learn the fundamentals of secure chip-card processing mandated by the major payment brands. The course emphasizes the pros and cons of Near Field Communication (NFC), secure element, Host Card Emulation (HCE), Bluetooth, QR codes, tokens and eWallets. You’ll learn about online security risks such as Heartbleed; fraud prevention methods, biometrics, cloud-based security and Fast Identification Online (FIDO); and the role of cryptocurrency and future trends. Course 30319 Multimedia Fundamentals This course provides hands-on instruction in the fundamental aspects of video and audio technology in the context of production for the Web. It begins with the fundamentals of light, color, camera, sound, microphone and recording technologies, with a review of the audio/video formats used in HTML5. You’ll learn practical techniques for recording high-quality audio and video, including editing and storytelling development. The course includes lab exercises using Adobe Premiere and Audition for editing and quality enhancement. You will work under the guidance of the instructor to produce a final project. Course 30358 Perl Programming, Comprehensive This comprehensive hands-on course covers all the basic Perl syntax and programming constructs. You will develop programs in class and as homework assignments. In addition to the basics, the course covers the file handle, filters, testing and system interface and introduces the object-oriented features in Perl, standard libraries, and how to package and modularize Perl programs. By the end of course, you should be able to develop sophisticated Perl scripts in several applications. Course 2110 Programming for Cloud Computing: Amazon Web Services This course reviews cloud computing that focuses on Infrastructure-as-a-Service (IaaS). Discussions will address the various AWS computing, storage, database, networking, messaging, monitoring, and deployment services as well as APIs, including EC2, Auto-Scaling, EBS, S3, SimpleDB, RDS, ElastiCache, Load Balancing, VPC, SQS, SNS, SES, CloudWatch, and Beanstalk. You will design, code and deploy a cloudfocused tool or application in an in-class project, and learn the concepts and programming techniques used by both IT professionals and application developers. Course 23094 Python Programming for Beginners This hands-on lab-based course is intended for newcomers to programming. The course covers the important concepts and programming mechanisms that exist in all programming languages: reading and writing to standard I/O, using operators, controlling the flow of execution, using functions, reading and writing files, and object-oriented programming concepts. It also includes Python specific facilities such as code re-use, built-in sequence types, and iteration. Interactions and expert help are available. Course 20776 Python for Programmers Because of its clear and elegant syntax, dynamic typing, automatic memory management, and straightforward module architecture, Python enhances program correctness and increases efficiency. Its code is easy to read, write, extend, and modify. This lab-based course builds proficiency in Python, and the skills and knowledge for creating applications using task-specific Python libraries. Topics include the Python environment and code introspection, syntax, flow control, function protocols, exception handling and functional programming. You’ll also learn about object-oriented features, classes, inheritance and overriding as well as building applications, packages, and libraries. Course 3064 Ruby and Ruby on Rails Ruby on Rails is a popular framework for creating dynamic Web 2.0 database applications. It delivers working, bare-bones Web applications out of the box, ready to be developed in your application. After an introduction to the Ruby language and the Ruby on Rails framework, this course follows a Web application build process with RoR. You will learn the key functionalities, major Web development tasks, and advanced dynamic Web features using the framework. The course covers configuration, debugging, testing, databases, AJAX on Rails, and other advanced topics. Course 21342 User Experience Design Fundamentals User experience design is a major factor in creating winning industry products. This course focuses on using user-centered design strategies and methods to create effective websites and Web applications that provide an excellent user experience. The course will also expose you to the multi-disciplinary nature of the user experience design process, design thinking, and the steps you can take to succeed. The course covers methods and strategies of six overlapping phases: problem identification, information collection, idea generation, prototyping, evaluation/testing, and implementation. Course 30031 Web Applications Testing, Comprehensive This course provides the knowledge and skills needed to test Web apps. You’ll learn to develop a test plan and test cases that can be executed automatically. The course covers three aspects of Web testing: UI, Web services, and load/performance. The Selenium tool is used to interact with browsers and automate UI testing. You’ll learn to use Selenium design patterns to manage large numbers of automated tests. The course covers the use of JavaScript in WebDriver tests, focusing on testing RESTful Web services and addressing stress, load and performance testing of Web applications. Course 30355 Web Framework Using JavaScript: The MEAN Stack The MEAN stack (MongoDB, ExpressJS, AngularJS, and Node.js) is an emerging Web framework that uses JavaScript to build Web applications from front to back. This course explains the four components and the role each has in building a modern Web application, and then covers the configuration, implementation and programming details. You will learn to build the Node.js server, include Express in the app, interface with the document-oriented database MongoDB, and use Angular directives and services on the client side. Additionally, you’ll interact with JSON, Model-ViewController, Web services and HTML. Course 30377 Web Technologies, Introduction This course introduces many key Web technologies without delving into programming. It covers Internet fundamentals such as HTML, Cascading Style Sheets (CSS), and Extensible Markup Language (XML), and describes how scripting, such as JavaScript, jQuery, and AJAX, works in dynamic websites. The course also discusses server technologies, Web and application servers, Hypertext Preprocessor (PHP), content management systems, Internet security, e-commerce, databases, mobile device Web design, social networking, and cloud computing. By the end of the course, you’ll have the knowledge you need to work with developers, designers, site administrators, and marketing professionals effectively. Course 22623 XML Essentials This course is an introduction to the power of XML and its importance to the Web. The course begins with the history and background of XML and the advantages of moving toward the XML standard, then introduces basic tags as well as syntax rules for XML and XML environments. Practical examples will be used to demonstrate the basics of working with XML, cascading style sheets and documenttype definitions. The course briefly addresses the Document Object Model (DOM) concept and the data manipulation capability. Course 3279 Course Planning Session Register online for a complimentary one-on-one session. Course 30371 Not printed or mailed at state expense. 611796-1502-2082 (5/15/15)