دپارتمانلینوکس و متن باز
دوره های در حال ثبت نام
کد دوره : --
لینوکس پیشرفته (LPIC-۲)
  • به دلیل افزایش ثمربخشی کلاس امکان مصاحبه علمی قبل از دوره وجود دارد .
  • تمامی مباحث  در کلاس به صورت کارگاهی و بر مبنای سناریو آموزش داده خواهد شد .
  • امتحان دوره به صورت کاملا عملی و پیاده سازی یک شبکه کامل مبتنی بر سرویس های لینوکسی می باشد .
  • پیش نیاز : داشتن مدرک LPIC 1   و داشتن دانش و آگاهی کافی در LPIC1.
  • طول دوره : 70 ساعت

اگه هنوز توي انتخاب اين دوره شك داريد و نياز به اطلاعات بيشتر داريد مي تونيد از مشاوره رايگان لايتك استفاده كنيد
اگه نياز داريد تا با استاد همين دوره قبل از ثبت نام، مشورت كنيد، همين الان تماس بگيريد.

02166086019 - 02166013455

 

مخاطبان دوره
  •  متخصصین شبکه و سیستم عامل
  • علاقمندان و کاربران و راهبران این سیستم عامل و شبکه
توانایی پس ازگذراندن دوره
  • نصب و راه اندازی سرویس ها و کار با فرمان‌های راهبری آن
  • رفع اشکالات و بهینه سازی سرویس ها در محیط single server
سرفصلهای دوره
  • نحوه بوت شدن سیستم
  • systemd و init و  نحوه کار آنها
  • پروتکل ftp
  • محدود نمودن کاربران
  • بررسی core و core dump و مدیریت برروی اینگونه فایلها
  • بررسی پروتکل ssh
  • بررسی پروکسی سرور و نحوه نصب و راه اندازی و پیکر بندی آن
  • بررسی mail server ها و نصب و راه اندازی یک mail server
  •  مدیریت برروی کاربران و گروه‌ها
  • بررسی مجوزهای خاص مانند s , t و نوشتن یک برنامه کوچک با C
  • بررسی logger های سیستم مانند syslog , rsyslog, syslog-ng
  • بررسی lftp
  • بررسی عمسق یک فایل سیستم و آنالیز فایل‌های fstab, mtab
  • بررسی فرمان‌های مبتنی بر مدیریت شبکه مانند netstat , ifup و ...
  • بررسی termcap, terminfo
  • بررسی swap و تولید نمودن swap file
  • بررسی پروتکل dhcp  و راه اندازی آن
  • بررسی سرویسهای at , cron
  •  بررسی کاربرد های pam
  • performance tuning
  • بررسی دیواره آتش(FireWall)
  • بررسی کرنل لینوکس و کمپایل این سیستم عامل
  •  بررسی پارامترهای کرنل
  • بررسی lvm و راه اندازی آن
  • راه اندازی ntp
  • بررسی مقدماتی NFS و چگونگی اشتراک گذاری فایل‌ها
  •  بررسی مختصر xinetd
  • بررسی کامل پروتکل telnet
  • بررسی سهمیه بندی در لینوکس (quota)
  • و مطالب مرتبط با راهبری لینوکس
مدت زمان
۷۰
هزینه دوره حضوری
۱۳۰۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۶/۰۸/۱۴
روزهای برگزاری
یکشنبه-سه شنبه
ساعات برگزاری
۱۶ الی ۲۰
کد دوره : --
Linux Kernel Driver Programming

دوره برنامه‌نویسی درایور و ماژول کرنل لینوکس با تمرکز بر روی درونی‌ترین جز سیستم‌عامل پر کاربرد و قدرتمند لینوکس، سعی دارد تا با استفاده از به روز ترین و استانداردترین APIهای موجود در زمینه توسعه هسته این سیستم‌عامل، راه را برای توسعه ابزارهایی در پایین‌ترین سطوح عملکرد سیستم فراهم آورد تا برنامه‌نویسان و سازندگان سخت‌افزارهای اختصاصی برنامه پذیر قادر باشند داریورهای اختصاصی خود را تولید کرده، شبکه سیستم را در سطحی به مراتب موثرتر از هر دیواره آتشی مدیریت کرد، و حتی با دستکاری فراخوانی‌های سیستمی اقدام به تغییر روند اجرایی مرسوم برنامه های سطح کاربرد نمایند که تا پیش از این و در هیچ دوره یا با استفاده از هیچ ابزار برنامه‌نویسی دیگری امکان آن را نداشته‌اند.

مخاطبان دوره

متخصصان شبکه و سیستم‌عامل، توسعه دهندگان نرم‌افزارهای سیستمی

لازم به ذکر است این دوره به صورت کاملا حرفه ای و برای دانشجویانی که دوره لینوکس مقدماتی و پیشرفته را گذرانده اند برگزار می گردد.

توانایی پس ازگذراندن دوره
  • امکان نوشتن ماژول‌های اختصاصی برای مدیریت کردن وظایف مدیرسیستم و شبکه
  • امکان نوشتن درایورهای اختصاصی برای دستگاه‌های موجود یا ساخته شده توسط خود
  • امکان دستکاری درایورها و فراخوانی‌های سیستمی برای بر طرف کردن نیازهای مدیریت سیستم و شبکه
  • آشنایی با معماری هسته لینوکس و رابط برنامه‌نویسی آن
سرفصلهای دوره

1. Part One: An Introduction To Linux Kernel Programming

            1.1. Linux Kernel programming Intro

1.1.1. History Behind Linux Kernel

1.1.2. Linux Kernel Versions

1.1.3. Monolithic Architecture Vs. Micro-Kernel

1.1.4. Kernel Modules Vs. User-Space Programs

1.1.5. Loadable Kernel Modules Vs. Drivers

1.1.6. Kernel Subsystems and Driver Types

1.1.7. Setting Up an Environment

1.1.8. Compiling a Fresh Kernel

            1.1. Make Your First Loadable Kernel Module

1.2.1. Anatomy of a Loadable Kernel Module

1.2.2. Writing Your First Kernel Module

1.2.3. Using Kernel Logs To Communicate With User

1.2.4. Defining Command Line Arguments

1.2.5. Adding Pesudo Information

1.2.6. Building a Kernel Module with Makefiles

1.2.7. Installing, Removing and Reviewing a Module’s Info

1.2.8. How It Actually Works

1.3. Kernel Space - User Space Interfaces

1.3.1. Using Proc File System and Seq-Files

1.3.2. Using Device Files, Major and Minor Numbers

1.3.3. Communicating with User-Space Through Charachter Devices

1.3.4. Facilitate a Charachter Driver with IOCTL Commands

1.3.5. Checking User-Space Capability and Permission

1.3.6. Making Device Node Dynamically

1.3.7. Using Attributes of Sys File System with Kobjects

1.3.8. Putting All Toghether

1.4. Linux Kernel Programming Concepts

1.4.1. Debugging Techniques

1.4.2. Atomic Context Vs. Process Context

1.4.3. Kernel Data Structures

1.4.4. System Call Interface

2. Part Two: Linux Kernel Programming ToolBox

2.1. Concurrency Handling

2.1.1. Semaphores and Mutexes

2.1.2. Spin-Locks and Completions

2.1.3. Atomic Variables and Lock-Free Algorithms

2.2. Time, Delay, Deffered Works and Timers

2.2.1. Timesamps and Jiffies

2.2.2. Long Delays Vs. Short Delays

2.2.3. Busy-Waiting Vs. Sleep Based Delay

2.2.4. Workqueues and Deffered Works

2.2.5. Fantastic Kernel Timers

2.2.6. Blocking I/O

2.3.  Interrupt Handling

2.3.1. Interrpts  Concepts and Vectors

2.3.2. Using hard Interrupts

2.3.3. Using Softirqs

2.3.4. Interrupt Handlers

2.3.5.  Slow and Fast Handlers, Top and Bottom Halves

2.3.6. Tasklets and Workqueues

2.4. Memory Allocation

2.4.1. Kmalloc Function and Memory Allocation Concept

2.4.2. Linux Memory management Subsystem

2.4.3. Memory Pools Data Structure and Functions

2.4.4. Lookaside Chaches Data Structure and Functions

2.4.5 Kfifo Data Structure and Functions

2.4.6. Page Allocations and Obtaining Large Buffers

2.4.7. Per-CPU Variables

2.4.8. Virtual Addresses and Memory Remap

2.5. Process Management

2.5.1. Process, Threads and Kthreads Concepts

2.5.2. Systemd Vs. Initd

2.5.3. Process Data Structures

2.5.6. Check and Set Process States

2.5.7. Send Signals to a Process

2.5.8. Moving Around System Process Tree

2.5.8. Process Creation and Termination

2.5.9. Multi tasking, Parallelism and Processes

2.5.10. Process Scheduling Concepts and Linux CFS Scheduler

2.6. Communicating With Hardwares

2.6.1. I/O Ports and I/O Memories

2.6.2. I/O Ports Registration

2.6.3. Data Transfer Via an I/O port

2.6.4. I/O Memory Registration

2.6.5. Data Transfer Via an I/O Memory

2.6.6. I/O Ports mapped On I/O Memory

3. Part Three:  Driver Programming Tutorials

3.1. Parallel Port Dirvers

3.1.1. Paralle Port Structures and Concepts

3.1.2. Preparing a Parallel Port

3.1.3. Parallel Port Interrupt Line Probing

3.1.4. Parrallel Port Interrupt Handler

3.1.5. Data Transfer

3.1.6 Creating a Parallel Port Driver

3.2. PCI Port Drivers

3.2.1. PCI Interface Concepts and Structure

3.2.2. PCI Adresses and Regions

3.2.3. PCI Registration and Probing

3.2.4. Accessing PCI Configuration Space

3.2.5. Accessing PCI I/O Port and I/O Memory

3.2.6. PCI Interrupts

3.2.7. Data Transfer

3.2.8. Creating a PCI Driver

3.3. USB Port Drivers

3.3.1. USB Ports and Devices Concepts

3.3.2. USB Drivers, Core Drivers and Host-Controllers

3.3.3. Using USB URBs

3.3.4. Using USB Notifiers

3.3.5. Probbing, Connect and Disconnect Operations

3.3.6. Data Transfer Without URBs

3.3.7. USB Data Structures and Data Functions

3.3.8. Creating an Adequate USB Driver

3.4. TTY Drivers

3.4.1. TTY Driver Data Structures

3.4.2. Buffering and Other Functions

3.4.3. Seting and Using Termios

3.4.4. Device Access

3.4.5. Creating a TTY Driver

3.5. Block Drivers

3.5.1. Block Device Drivers Data Structures

3.5.2. Block Requests and Gen-Disks

3.5.3. Request Queues

3.5.4. DMA Access

3.5.5. Creating a Practical Block Driver

3.6. VFS Interface

3.6.2. Common Filesystem Layes

3.6.2. Filesystem Abstraction Layer

3.6.3. Unix Filesystems

3.6.4. VFS Objects and Data Structures

3.6.5. Super Block Object and Operations

3.6.6. Inode Object and Operations

3.6.7. Dentry Object and Operations

3.6.8. File Object and Operations

3.6.9. Creating a Simple Filesystem

3.7. Network Drivers

3.7.1. Network Addresses, Protocols and Interfaces

3.7.2. Network Stack and Its Data Structures

3.7.3. Packet Transfer and Acceptance

3.7.4. Concurrency, Scatter/Gather I/O, Timeouts and Interrupts

3.7.5. Link States, Socket Buffers, Data-Linke Layer

3.7.6. Creating a Basic Network Driver

3.8. Net-Filter Hooks

3.8.1. Iptables and Net-Filter

3.8.2. Hook Chaines, Priority and Position

3.8.3. Protocols, Addresses and Interface Filtering

3.8.4. Intercepting a Packet Content

3.8.5. Creating a Rule-Based Firewall

4. References

4.1. Linux Device Drivers, 3rd Edition, By Greg Kroah-Hartman, Alessandro Rubini & Jonathan Corbet, O'REILLY

4.2. Linux kernel Development, 3rd Edition, By Robert Love,  Developer’s Library

4.3. Professional Linux Kernel Architecture, By Wolfgang Mauerer, Wiley Publishing

4.4. Understanding the Linux Kernel, 3rd Edition,  By Daniel P. Bovet, O’Reilly

4.5. The Linux Programming Interface,  By Michael Kerrisk, No Strach Press

4.6. Linux Kernel Networking Implementation, By Rami rosen, Apress

4.7. Linux Kernel Module Programming Guide, By Peter Jay Salzman, Michael Burian & Ori Pomerantz

4.8. Advanced Linux Progrmming Guide, By Mark Mitchell, Jeffrey Oldham & Alex Samuel, New Riders Publishing

4.9. Modern Operating Systems, 4th Edition, By Andrew S. Tanenbaum & Herbert Bos,  Person Education Inc.

4.10. Operating System Concepts, 9th Edition, Abraham Silberschatz & Peter Baer Galvin, Wiley Publishing

مدت زمان
۶۴
هزینه دوره حضوری
۱۵۰۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۶/۰۸/۰۴
روزهای برگزاری
پنج شنبه
ساعات برگزاری
۱۲ الی ۱۶
کد دوره : mL
برنامه نویسی شل اسکریپت

برنامه نويسي در شل يکي از مباحث مهم براي کارشناسان لينوکس محسوب مي شود. در این دوره شما با برنامه نویسی در محیط لینوکس آشنا می شوید.

 

 

مخاطبان دوره
  • راهبران سرورهای لینوکس,کارشناسان شبکه، دانشجويان فناوري اطلاعات و کامپيوتر
  • علاقمندان و کاربران و راهبران این سیستم عامل
توانایی پس ازگذراندن دوره

نوشتن اسکریپت ها برای راهبری و اتوماتیک نمودن فعالیت‌ها

سرفصلهای دوره
  • shell چیست
  • نحوه بوشتن یک shell script با استفاده از یک ویرایشگر
  • فررسی متغیر ها در shell و بررسی تعداد زیادی فرمان‌های داخلی در bash
  • دستور if
  •  دستور while
  • دستور case
  • دستور until
  • دستورات خواندن و نوشتن مانند read , printf,echo و بررسی redirection
  • دستور select
  • نحوه خواندن اطلاعات از فایل
  • بررسی و کنترل سیگنالها
  • بررسی انواع خروج از shell مانند  exit , return
  • چگونگی تولید function
  • نحوه کمپایل کد مبدأ bassh و نصب آن در لینوکس
  • مقایسه انواع shell ها
  •  نحوه debug  نمودن یک shell script
  •  نحوه تبدیل نمودن یک اسکریپت به یک exec file کد شده و غیر قابل بازیافت
مدت زمان
۴۰
هزینه دوره حضوری
۱۰۰۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۶/۱۰/۰۷
روزهای برگزاری
پنج‌شنبه‌ها
ساعات برگزاری
۸ الی ۱۲
کد دوره : --
LPIC-۳ ۳۰۳: Linux Enterprise Professional - Security

LPIC 3 -303  برای متخصصان لینوکسی که حداقل 4 سال سابقه کار در سطح پیشرفته را دارند طراحی شده که به بررسی و آموزش ماژول های امنیتی، آشنایی با رمزنگاری، ایجاد امنیت برای سرویس‌ها  و امن‌سازی سیستم عامل و شبکه می پردازد.

مخاطبان دوره

متخصصان لینوکس 

توانایی پس ازگذراندن دوره

توانایی Hardening  سرویس ها، سیستم عامل ، توانایی کانفیگ ماژول‌های امنیتی و فایروال، آشنایی با Cryptography  

سرفصلهای دوره
  • Operations Security
  • Linux Operating System Security
  • Host Configuration Management
  • Network Security
  • Keeping Linux up-to-date
  • Managing file system security properties
  • Securing server access
  • Application Security
  • Access Control
  • Extended Attributes and ACLs
  • Managing Linux User Security
  • Managing Linux permissions and attributes
  • Managing user accounts
  • Installing central authentication
  • Securing Linux Services
  • Securing services
  • Securing network file systems
  • Applying secure remote access solutions
  • Securing Linux Infrastructure
  • Sniffing and port scanning
  • netfilter/iptables
  • Managing firewalls
  • Managing certificates and public key infrastructures
  • Managing GPG
مدت زمان
۷۰
هزینه دوره حضوری
۲۰۰۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۶/۰۹/۳۰
روزهای برگزاری
پنج‌شنبه
ساعات برگزاری
۱۲ الی ۱۶
کد دوره : --
GTK+ Desktop Application Programming

برنامه‌نویسی ابزارهای دارای رابط گرافیکی کاربر با توجه به تنوع سیستم‌های عامل مورد استفاده کاربران نیازمند ابزاری است که با کمترین هزینه و زحمت بهترین نتیجه را بدهد، تیم توسعه میزکار گنوم، با معرفی ابزار GTK+ که یک کتابخانه تحت زبان c و قابل استفاده توسط Python  و C می باشد، ابزاری را فراهم آورده‌اند که برنامه‌نویسان بتوانند به راحتی، یکبار برنامه خود را نوشته و آن را در ویندوز، لینوکس و مک به راحتی اجرا نمایند. آشنایی با اجزا و رابط برنامه‌نویسی این کتابخانه بسیار قدرتمند که می‌تواند از یک طرف جایگزین مناسبی برای ابزارهای .net مایکروسافت بوده و از طرف دیگر با API های سیستمی لینوکس و سایر سیستم‌عامل‌ها یکپارچه شود، هدف اصلی این دوره است.

مخاطبان دوره

برنامه‌نویسان برنامه‌های دسکتاپ و متخصصان سیستم‌عامل لینوکس

توانایی پس ازگذراندن دوره
  • توانایی نوشتن برنامه‌های دارای رابط گرافیکی کاربر به صورت Cross Platform
  • آشنایی با نحوه ارتباط برنامه‌های نوشته شده با پایگاه‌های داده
  • آشنایی با نحوه استفاده از ابزارهای ترسیم و کتابخانه‌های گرافیکی
  • آشنایی با رویدادها و ابزارهای جانبی و نحوه مدیریت کردن آنها
  • آشنایی با انواع کنترل‌ها، منوها، نوارهای ابزار و وضعیت و ... 
سرفصلهای دوره

۱. فصل اول: معرفی GTK+

۱.۱. تاریخچه GTK+ و سیستم‌های x Window

۲.۱. معرفی کتابخانه‌های مورد پشتیبانی Glib, Gobject, GDK

۳.۱. ارتباط با زبان‌های برنامه‌نویسی دیگر

 

۲. فصل دوم: نوشتن اولین برنامه GTK+

۱.۲. اضافه کردن GTK+ به برنامه HelloWorld

۲.۲. ساختار سلسله مراتبی Widgetها

۳.۲. پنجره‌های GTK+

۴.۲. تابع حلقه اصلی، سیگنال‌ها و ارتباط آنها به توابع

۵.۲. سیگنال‌های حذف و توقف

۶.۲. انواع رویدادها و استفاده از ساختمان داده رویداد اختصاصی

۷.۲. توابع GtkWidget و GtkWindow

۸.۲. پردازش رویدادهای متوقف

۹.۲. دکمه‌ها و خصوصیات Widgetها

 

۳. فصل سوم: Widgetهای حاوی Containerها

۱.۳. آشنایی با انواع Containerها (Decorator Container, Layout Container, Boxes, Panes)

۲.۳. انواع جدول‌ها و گسترش دهنده‌ها

۳.۳. آشنایی با GtkNotebook و عملیات روی برگه‌ها

۴.۳. جعبه‌های رویداد

 

۴. فصل چهارم: آشنایی و کار با Widgetهای پایه

۱.۴. آشنایی و کار با Toggle Buttonها، Check Buttonها و Radio Buttonها

۲.۴. آشنایی با Text Entryها و Spin Buttonها

۳.۴. حالت‌دهی به Widgetها، تعیین اندازه‌ها و ساختمان داده GtkStyle

۴.۴. آشنایی با دکمه‌های Color, File, Font

 

۵. فصل پنجم: آشنایی و کار با انواع دیالوگ‌ها

۱.۵. ساختمان دیالوگ اختصاصی

۲.۵. استفاده از دیالوگ‌های پیش‌فرض Message, About, File, Color, Font

۳.۵. ساختن دیالوگ با چندین صفحه، تابع page Forward و GtkAssistantm, GtkProgressBar

 

۶. فصل ششم: استفاده از کتابخانه Glib

۱.۶. ساختمان داده‌های پایه و ماکروهای استاندارد

۲.۶. Log کردن پیام‌ها و مدیریت حافظه

۳.۶. توابع کاربردی، تایمرها، کار با فایل‌ها، دایرکتوری‌ها و فایل سیستم، متغیرهای محلی

۴.۶. حلقه اصلی برنامه Timeoutها، توابع ایده‌آل، زمینه‌ها و منابع

۵.۶. انواع داده‌ای، رشته‌ها، لیست‌های پیوندی، درخت دودویی متوازن، درخت n-تایی، آرایه‌ها، حداول پراکندگی، Quarkها و لیست‌های داده همراه با کلید

۶.۶. کانال‌های ورودی و خروجی، GIO Channels و پایپ‌ها، فایل‌ها و فرآیندها

۷.۶. ماژول‌های دینامیک

 

۷. فصل هفتم: آشنایی با Widget نمایش متن

۱.۷. آشنایی و کار با پنجره‌های قابل پیمایش

۲.۷. text Bufferها،خصوصیات نمایش متن، تکرارها و نشانه‌های متنی

۳.۷. عملیات Cut, Paste, Copy روی متن

۴.۷. جستو درون بافرها و اسکرول کردن آنها

۵.۷. اضافه کردن تصاویر و ویجت‌های فرزند

۶.۷. GtkSourceView

 

۸. فصل هشتم: آشنایی با Widget نمایش درختی

۱.۸. مدل GtkTree و GtkCellRenderer, GtkTreeViewColumn, GtkTreeView

۲.۸. استفاده از GtkListStore برای ساختن نمایش درختی و استفاده از GtkTreeStore

۳.۸. اشاره به سطرها، Tree Paths, Tree Iterators

۴.۸. اضافه و حذف سطرها و انواع انتخاب‌گرها و مدیریت Double Click

۵.۸. توابع کار با داده سلولی و Cell Renderers

 

۹. فصل نهم: منوها و نوارهای ابزار

۱.۹. منوهای جهنده (Pop-Up Menus)

۲.۹. نوارهای حالت، Status barها

۳.۹. آیتم‌های منو Image itrem, Check Item, Radio Item, Sub Menus

۴.۹. نوار منو

۵.۹. نوارهای ابزار Toggle Tool Button, Tadio button, Menu Tool Button

۶.۹. ساخت دینامیک منوها، ساخت UI فایل‌ها، بارگذاری آنها و Action Typeهای اضافه و Place Holderها

 

۱۰. فصل دهم: ساخت دینامیک رابط کاربری

۱.۱۰. طراحی یک رابط کربری کارآمد

۲.۱۰. استفاده از نرم‌افزار Glade  برای طراحی رابط کاربری

 

۱۱. فصل یازدهم: Widgetهای دیگر GTK+

۱.۱۱. توابع و Widgetهای نقاشی روی فرم

۲.۱۱. ابزارهای تقویم، چاپ و تایمر و آیکون‌های حالت

۳.۱۱. تنظیمات Rendering

۴.۱۱. کار با Recent Fileها و Auto Completionها

 

۱۲. فصل دوازدهم: زبان برنامه‌نویسی Vala

۱.۱۲. معرفی و تاریخچه زبان برنامه‌نویسی Vala

۲.۱۲. استفاده از Widgetهای Gtk+ در زبان Vala

۳.۱۲. کار با پوسته، فایل‌ها و شبکه در زبان Vala

۴.۱۲. ساختمان‌داده‌ها و مفاهیم زبان  Vala

مدت زمان
۴۸
هزینه دوره حضوری
۱۵۰۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۶/۰۹/۲۳
روزهای برگزاری
پنج‌شنبه‌ها
ساعات برگزاری
۸ الی ۱۲
کد دوره : --
QT Desktop Application Programming

برنامه‌نویسی ابزارهای دارای رابط گرافیکی کاربر با توجه به تنوع سیستم‌های عامل مورد استفاده کاربران نیازمند ابزاری است که با کمترین هزینه و زحمت بهترین نتیجه را بدهد، شرکت نوکیا، با معرفی ابزار QT که یک کتابخانه تحت زبان C++ و قابل استفاده توسط Python  و C++ می باشد، ابزاری را فراهم آورده‌اند که برنامه‌نویسان بتوانند به راحتی، یکبار برنامه خود را نوشته و آن را در ویندوز، لینوکس و مک به راحتی اجرا نمایند. آشنایی با اجزا و رابط برنامه‌نویسی این کتابخانه بسیار قدرتمند که می‌تواند از یک طرف جایگزین مناسبی برای ابزارهای .net مایکروسافت بوده و از طرف دیگر با API های سیستمی لینوکس و سایر سیستم‌عامل‌ها یکپارچه شود، هدف اصلی این دوره است.

مخاطبان دوره

برنامه‌نویسان برنامه‌های دسکتاپ و متخصصان سیستم‌عامل لینوکس

توانایی پس ازگذراندن دوره
  • توانایی نوشتن برنامه‌های دارای رابط گرافیکی کاربر به صورت Cross Platform
  • آشنایی با نحوه ارتباط برنامه‌های نوشته شده با پایگاه‌های داده
  • آشنایی با نحوه استفاده از ابزارهای ترسیم و کتابخانه‌های گرافیکی
  • آشنایی با رویدادها و ابزارهای جانبی و نحوه مدیریت کردن آنها
  • آشنایی با انواع کنترل‌ها، منوها، نوارهای ابزار و وضعیت و ... 
سرفصلهای دوره

۱. فصل اول: آشنایی با Qt (۲ ساعت)

۱.۱. معرفی Qt و تاریخچه پیدایش آن

۲.۱. مجوزهای انتشار Qt

۳.۱. معماری نرم‌افزار و سکوهای قابل پشتیبانی

۴.۱. معرفی ماژول‌های اصلی و ماژول‌های قابل افزودن به Qt

۵.۱. ابزارها و محیط‌های توسعه

 

۲. فصل دوم: شروع کار با Qt (۴ ساعت)

۱.۲. ساختن برنامه Hello World

۲.۲. ساختن Connection‌ها

۳.۲. بررسی برخی Widgetها

۴.۲. ساختن دیالوگ‌های ساده با Qdialog

۵.۲. معرفی و کار با سیگنال‌ها و Slotها و رویدادها

۶.۲. ساختن انواع دیالوگ‌ها و آشنایی با Built-in Widget ها

 

۳. فصل سوم: ساختن پنجره‌های اصلی (۴ ساعت)

۱.۳. ساختن پنجره‌ها با Qmain

۲.۳. ساختن منوها و نوارهای ابزار

۳.۳. ساختن Status Bar

۴.۳. ساختن منوی فایل

۵.۳. استفاده از دیالوگ‌ها و روش‌های ذخیره‌سازی داده‌ها

۶.۳. معرفی و کار با Splash Screen ها

 

۴. فصل چهارم: پیاده‌سازی عملکردی برنامه‌ها (۴ ساعت)

۱.۴.آشنایی با Widget مرکزی و Qtable

۲.۴. بارگذاری و ذخیره‌سازی اطلاعات

۳.۴. پیاده‌سازی منوی Edit و سایر منوها

۴.۴. QtableWidgetItem

 

۵. فصل پنجم:ساختن widgetهای اختصاصی (۴ ساعت)

۱.۵. شخصی‌سازی Widgetهای Qt

۲.۵. معرفی و کار با QWidget

۳.۵. یکپارچه‌سازی Widget اختصاصی Qt Designer

 

 

۶. فصل ششم:مدیریت لایه‌بندی (۴ ساعت)

۱.۶. چیدمان عناصر روی یک فرم، Horizontal, Vertical, Grid

۲.۶. لایه‌های پشته‌ای و جداکننده‌ها

۳.۶. فضاهای قابل پیمایش

۴.۶. Widgetهای Dock و Toolbarها

۵.۶. چند رابطی

 

۷. فصل هفتم:پردازش رویدادها (۲ ساعت)

۱.۷. باز تعریف رویدادهای پردازش رویدادها

۲.۷. نصب فیلترهای رویداد Event Filter

۳.۷. پاسخگویی در میان پردازش سنگین

 

۸. فصل هشتم:گرافیک ۲ بعدی و ۳ بعدی (۶ ساعت)

۱.۸.آشنایی و کار با Qpainter

۲.۸. انتقال‌ها در طراحی

۳.۸. رندرینگ با کیفیت بالا با QImage

۴.۸. چاپ کردن در Qt

۵.۸. مقدمه‌ای بر گرافیک با OpenGL

 

۹. فصل نهم:کشیدن و رها کردن (۲ ساعت)

۱.۹. فعال کردن Drag & Drop

۲.۹. پشتیبانی از انواع خاص کشیدن

۳.۹. مدیریت Clipboard

 

۱۰. فصل دهم: کلاس‌های Containerها (۶ ساعت)

۱.۱۰. کلاس‌های نمایش اشیا

۲.۱۰. آشنایی با Sequential Containerها

۳.۱۰. آشنایی با Associative Containerها

۴.۱۰. الگوریتم‌های جنریک

۵.۱۰. متغیرها، آرایه‌ها و رشته‌ها

 

۱۱. فصل یازدهم: ورودی/ خروجی ( ۴  ساعت)

۱.۱۱. خواندن و نوشتن اطلاعات باینری و متنی

۲.۱۱. پیمایش دایرکتوری‌ها

۳.۱۱. درون‌سازی منابع

۴.۱۱. ارتباطات بین فرآیندی

 

۱۲. فصل دوازدهم: ارتباط با پایگاه‌های داده (۶ ساعت)

۱.۱۲. معرفی پایگاه داده‌ها (DBMS)ی آزاد متن‌باز نظیر MariaDB, Hadoop, PostgreSQL, ...

۲.۱۲. ارتباط و پرس و جو با یک پایگاه داده

۳.۱۲. نمایش اطلاعات در فرم‌های جدولی

۴.۱۲. پیاده‌سازی فرم‌های Master-Details

 

۱۳. فصل سیزدهم: کار با شبکه (۸ ساعت)

۱.۱۳. نوشتن یک کلاینت FTP

۲.۱۳. نوشتن یک کلاینت HTTP

۳.۱۳. نوشتن کلاینت-سرور TCP

۴.۱۳. ارسال و دریافت بسته‌های UDP

 

۱۴. فصل چهاردهم: کار با فایل‌های XML (۲ ساعت)

۱.۱۴. خواندن XML با SAX و DOM

۲.۱۴. نوشتن XMLها

 

۱۵. فصل پانزدهم: کار با ویجت‌ها (۴ ساعت)

۱.۱۵. آشنایی و کار با Button, Line Edit, Action, List Widget, Combo Box, Radio Box, Check Box

۲.۱۵. آشنایی و کار با Progress Bar, Slider, Qhash, Qmap, Qtimer, QstringList, ToolTip

 

۱۶. فصل شانزدهم: همروندی و چند نخی (۲ ساعت)

۱.۱۶. ساختن، اجرا و همزمانی Threadها

۲.۱۶. تبادل اطلاعات با نخ اصلی

۳.۱۶. استفاده از کلاس‌های Qt در نخ‌های ثانویه

مدت زمان
۶۴
هزینه دوره حضوری
۲۰۰۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۷/۰۲/۱۳
روزهای برگزاری
پنج‌شنبه‌ها
ساعات برگزاری
۸ الی ۱۲
کد دوره : m}I1
لینوکس مقدماتی (LPIC-۱)

آزمایشگاه یادگیری فناوری اطلاعات دانشگاه صنعتی شریف به منظور توسعه منابع انسانی متخصص و ماهر در زمینه سیستم عامل لینوکس و کاربری آن در زمینه‌های تخصصی، نسبت به برگزاری دوره‌های آموزشی و آزمون‌های استاندارد و صدور گواهینامه حرفه‌ای شریف اقدام می‌نماید.

 

مخاطبان دوره

راهبران سرورهای لینوکس و کارشناسان شبکه و دانشجویان فناوری اطلاعات و کامپیوتر

توانایی پس ازگذراندن دوره
  • نصب و راه اندازی لینوکس و کار با فرمان‌های عمومی و نصب بسته ها
سرفصلهای دوره
  • لینوکس چیست
  • نحوه login نمودن
  • فرمان های مقدماتی مانند cut,sort,date,grep,uniq,man , info
  • بررسی یک ویرایشگر و از جمله vim
  • بررسی فایل و دایرکتوری و نحوه ساختن آن‌ها
  • بررسی فایل‌ها و دایرکتوری های نهفته که با bash. شروع می‌گردند
  • نحوه تهیه فایل پشتیبان با فرمان‌های tar,sync
  • بسته های نرم افزاری و نحوه نصب بسته های rpm,deb
  • روش های فشرده‌سازی از جمله gzip,zip,bzip2,7z
  • بررسی ساختار فایل سیستم لینوکس
  • نصب یک توزیع و بررسی انواع توزیع‌ها و فرق بین آن‌ها
  • نوشتن جند اسکریپت ساده از جمله نوشتن اسکریپتی که up بودن یک سرور را
  • بررسی نماید
  • تعریف متغیر ها و بکار گیری آن‌ها
  • متغیر های سیستمی مانند PATH , ID,USER و تعداد دیگر با بررسی فرمان env
  • بررسی مقدماتی نحوه boot شدن سیستم
  •  بررسی سیگنالها در لینوکس
  • بررسی دایرکتوری dev/
  • بررسی دایرکتوری proc/
  •  بررسی یک فایل سیستم لینوکس و به عنوان مثال ext3
  • نصب  و راه اندازی آپاچی وب سرور
مدت زمان
۵۰
هزینه دوره حضوری
۱۰۰۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۶/۰۹/۱۳
روزهای برگزاری
دوشنبه - چهارشنبه‌ها
ساعات برگزاری
۱۶ الی ۲۰
کد دوره : --
کارگاه DevOps Foundations

امروزه سرعت تولید و توسعه و همچنین استقرار نرم افزار به قدری بالا رفته است که دیگر روش های سنتی تولید نرم افزار ناکارامد خواهند بود. و اگر سازمانی با روش های سنتی به کار خود ادامه دهد ، دیریا زود به بن بست خواهد رسید. داشتن یک چرخه تولید نرم افزار سیال و سریع و قابل اعتماد نیاز هر سازمانی است که میخواهد در دنیای سریع امروز با رقبا به رقابت بپردازد.  این دوره کوتاه بیشتر به صورت تئوری است.

مخاطبان دوره
  • مدیران سیستم های مبتنی بر لینوکس
  • علاقه مندان به ورود به دنیای DevOps
  • مدیران و سرپرستان تیم های تولید نرم افزار
توانایی پس ازگذراندن دوره
  • شناخت کافی و مناسب از تعاریف و مفاهیم DevOps Ecosystem قابلیت نسبی در طراحی یک چرخه تولید نرم افزار مبتنی بر DevOps Ecosystem
سرفصلهای دوره
  • Goals, objectives and vocabulary
  • Benefits to the business
  • Performance measures and real-world results
  • Principles
  • Concepts and practices (including DevOps’ relationship to Agile, Lean and ITSM/ITIL)
  • Culture and organizational considerations
  • Communication and collaboration practices
  • Automation practices and technology considerations
  • Adoption considerations in an enterprise environment
  •         
مدت زمان
۸
هزینه دوره حضوری
۱۵۰۰۰۰ تومان
هزینه دوره مجازی
دوره به صورت مجازی برگزار نمی شود
تاریخ برگزاری
۹۶/۰۹/۲۳
روزهای برگزاری
پنج‌شنبه
ساعات برگزاری
۹ الی ۱۷
برنامه دروس لینوکس و متن باز

دپارتمان لینوکس سعی دارد در طول سه سطح شرکت کنند گان را برای کسب درآمد بالا و موقعیت های کاری مناسب آماده کند، سرفصلهای انتخاب شده و نوع تدریس هماهنگی بسیاری با نیاز بازار فعلی کسب و کار دارد و سعی می شود. این سه سطح به صورت زیر می باشد:

  • لینوکس مقدماتی (LPIC-1)
  • لینوکس پیشرفته (LPIC-2)
  • لینوکس تکمیلی (دوره های سطح LPIC-3)

گفتنی است برای تکمیل مباحث، گذراندن دو دوره دیگر زیر نیز پس از دوره لینوکس مقدماتی پیشنهاد می شود:

  • برنامه نویسی شل در لینوکس
  • Linux Kernel Driver Programming
نام کاربری یا کلمه ورود اشتباه است
ثبت نام انجام نشد
باشگاه ۱۸۲۲۳ عضوی لایتک
ثبت نام
ورود به صفحه شخصی
بازیابی گذرواژه
آدرس:
ساختمان شماره (1) : ضلع شمالی دانشگاه شریف - خیابان قاسمی - کوچه گلستان - پلاک 3
ساختمان شماره (2) : ضلع شمالی دانشگاه شریف - خیابان قاسمی - کوچه گلستان - پلاک 9
تلفن: ۰۲۱۶۶۰۱۳۶۴۷ - ۰۲۱۶۶۰۱۳۴۵۵
فکس: ۰۲۱۸۹۷۸۳۷۵۶
ایمیل: info@laitec.ir
شماره حساب : ۶۹۴۹۶۱۹۵۵۳ با شناسه ۱۲۳/۴۴ نزد شعبه بانک ملت باجه دانشگاه صنعتی شریف
استفاده از مطالب سايت لایتک فقط برای مقاصد غیر تجاری و با ذکر منبع بلامانع است.
کلیه حقوق این سایت متعلق به آزمایشگاه یادگیری فناوری اطلاعات دانشگاه صنعتی شریف (لایتک) می باشد.
laitec.ir
Copyright © 2002-2017