- الگوریتم (Algorithm): مجموعهای از دستورالعملها یا مراحل که برای حل یک مشکل خاص یا انجام یک وظیفه طراحی شده است.
- ساختار دادهها (Data Structure): روشهایی برای ذخیره و سازماندهی دادهها در کامپیوتر به گونهای که پردازش آنها کارآمد باشد. نمونهها شامل آرایهها، لیستهای پیوندی، درختها، گرافها و جداول هش هستند.
- سیستم عامل (Operating System): نرمافزاری که منابع سختافزاری کامپیوتر را مدیریت کرده و رابطی برای تعامل کاربر با سیستم فراهم میآورد. معروفترین سیستمهای عامل شامل ویندوز، لینوکس و macOS هستند.
- کامپایلر (Compiler): برنامهای که کد منبع نوشتهشده به زبان برنامهنویسی سطح بالا را به زبان ماشین یا زبان میانه (مانند کد اسمبلی) ترجمه میکند.
- مترجم (Interpreter): مشابه کامپایلر است، اما به جای ترجمه کد به طور کامل، دستور به دستور کد را اجرا میکند.
- پایگاه داده (Database): مجموعهای از دادهها که به صورت ساختارمند ذخیره میشوند و امکان دسترسی، اصلاح و مدیریت آنها به طور مؤثر وجود دارد. پایگاههای داده رابطهای مانند MySQL و PostgreSQL نمونههایی از این نوع هستند.
- شبکه (Network): سیستمهایی که برای انتقال دادهها و ارتباط بین دستگاههای مختلف از طریق پروتکلهای خاص مانند TCP/IP طراحی شدهاند.
- هوش مصنوعی (Artificial Intelligence): شاخهای از علوم کامپیوتر که هدف آن ایجاد سیستمهایی است که قادر به انجام وظایفی باشند که نیاز به هوش انسانی دارند، مانند شناسایی الگو، یادگیری ماشین و پردازش زبان طبیعی.
- یادگیری ماشین (Machine Learning): زیرمجموعهای از هوش مصنوعی که الگوریتمها و مدلهایی را برای تحلیل دادهها و پیشبینی رفتارها یا تصمیمگیریها توسعه میدهد.
- پردازش زبان طبیعی (Natural Language Processing - NLP): شاخهای از هوش مصنوعی که به سیستمها امکان درک، تجزیه و تحلیل و تولید زبان انسانی را میدهد.
- امنیت سایبری (Cybersecurity): مجموعهای از اقدامات، سیاستها و فناوریها که هدف آنها حفاظت از سیستمها، شبکهها و دادهها در برابر حملات، سرقت و آسیب است.
- دادهکاوی (Data Mining): فرآیند کشف الگوهای مفید و اطلاعات پنهان در حجمهای زیادی از دادهها.
- پردازش موازی (Parallel Processing): استفاده از چندین پردازنده یا هسته برای انجام محاسبات به طور همزمان، به منظور تسریع فرآیندها و افزایش کارایی.
- ابزارهای DevOps: مجموعهای از ابزارها و روشها که برای خودکارسازی فرآیندهای توسعه، آزمایش و استقرار نرمافزار طراحی شدهاند. ابزارهایی مانند Docker، Kubernetes و Jenkins از این دسته هستند.
- الگوریتم جستجو (Search Algorithm): الگوریتمهایی که برای پیدا کردن یک عنصر خاص در مجموعهای از دادهها استفاده میشوند. نمونهها شامل جستجوی دودویی و جستجوی خطی هستند.
- بلوکهای زنجیرهای (Blockchain): فناوریای که در آن دادهها به صورت بلاکهایی به هم متصل و به صورت امن ذخیره میشوند و برای مواردی مانند ارزهای دیجیتال استفاده میشود.
- توسعه نرمافزار (Software Development): فرآیند طراحی، ساخت، آزمایش و نگهداری نرمافزارهایی که برای انجام وظایف خاص ایجاد شدهاند.
- پروتکلهای شبکه (Network Protocols): مجموعهای از قوانین و استانداردها که نحوه انتقال دادهها بین دستگاهها در یک شبکه را مشخص میکنند. برخی از پروتکلهای معروف عبارتند از HTTP، TCP/IP و FTP.
- توسعه وب (Web Development): فرآیند طراحی، ساخت و نگهداری وبسایتها و اپلیکیشنهای وب، شامل استفاده از زبانهای مختلفی مانند HTML، CSS، JavaScript و سرورهای وب.
- تست نرمافزار (Software Testing): فرآیند بررسی و ارزیابی نرمافزار به منظور شناسایی مشکلات و اطمینان از عملکرد صحیح آن.
- یکپارچهسازی سیستم (System Integration): فرآیند ترکیب زیرسیستمهای مختلف به یک سیستم واحد به منظور کارکرد یکپارچه آنها.
- محاسبات ابری (Cloud Computing): استفاده از منابع و سرویسهای محاسباتی از راه دور (مانند سرورها و پایگاههای داده) که از طریق اینترنت قابل دسترسی هستند. خدمات ابری معروف شامل AWS، Google Cloud و Microsoft Azure هستند.
- نرمافزار متنباز (Open Source Software): نرمافزارهایی که کد منبع آنها برای عموم آزاد است و میتوان آنها را مطالعه، تغییر و توزیع کرد.
- توسعه اپلیکیشنهای موبایل (Mobile App Development): فرآیند طراحی و توسعه اپلیکیشنهای نرمافزاری برای دستگاههای موبایل، نظیر اندروید و iOS.
- پردازش گرافیکی (Graphics Processing): استفاده از پردازندههای گرافیکی (GPU) برای ایجاد و نمایش گرافیکهای پیچیده، که در بازیهای رایانهای و مدلسازیهای سهبعدی کاربرد دارند.
- سیستمهای توزیعشده (Distributed Systems): مجموعهای از کامپیوترها که به صورت مستقل عمل کرده و با یکدیگر ارتباط دارند تا یک سیستم واحد و یکپارچه ایجاد کنند. مثالها شامل سیستمهای فایل توزیعشده و سیستمهای محاسباتی مانند Hadoop هستند.
- پردازش سیگنال دیجیتال (Digital Signal Processing - DSP): فرآیند تحلیل، تغییر و بهبود سیگنالهای دیجیتال (مانند صدا و تصویر) با استفاده از الگوریتمهای ریاضیاتی.
- میکروپروسسور (Microprocessor): واحد پردازش مرکزی (CPU) یک کامپیوتر که در یک تراشه کوچک و یکپارچه ساخته میشود و اغلب در دستگاههای الکترونیکی مختلف استفاده میشود.
- معماری کامپیوتر (Computer Architecture): طراحی و ساختار داخلی یک کامپیوتر از جمله پردازندهها، حافظهها، ورودی/خروجی و نحوه تعامل این اجزا با یکدیگر.
- کدگذاری (Encoding): فرآیند تبدیل دادهها به قالب یا فرمت دیگری که قابل انتقال یا ذخیرهسازی باشد. برای مثال، تبدیل دادهها به باینری یا تبدیل فرمتهای صوتی به MP3.
- رمزگذاری (Encryption): فرآیند تبدیل دادهها به یک فرمت غیرقابلفهم برای حفظ امنیت اطلاعات در برابر دسترسیهای غیرمجاز.
- رمزگشایی (Decryption): فرآیند برگرداندن دادههای رمزگذاریشده به حالت اولیه خود بهوسیله استفاده از کلید رمزگشایی.
- الگوریتمهای فشردهسازی (Compression Algorithms): الگوریتمهایی که دادهها را طوری تغییر میدهند که حجم آنها کاهش یابد، بدون اینکه اطلاعات از دست برود. مثالهایی از این الگوریتمها شامل ZIP، RAR و JPEG هستند.
- مدلسازی دادهها (Data Modeling): فرآیند طراحی و ایجاد مدلهای منطقی برای دادهها که نحوه ذخیره و سازماندهی آنها در پایگاه دادهها را مشخص میکند.
- پروتکلهای رمزنگاری (Cryptographic Protocols): قوانین و استانداردهایی که برای اجرای رمزنگاری در ارتباطات اینترنتی بهمنظور حفظ امنیت دادهها استفاده میشوند. نمونههایی شامل SSL/TLS و HTTPS هستند.
- شبیهسازی (Simulation): فرآیند ساخت مدلهای کامپیوتری برای شبیهسازی رفتار سیستمهای واقعی، که در آزمایش و تحلیلهای مختلف کاربرد دارد.
- واحد پردازش گرافیکی (GPU): سختافزاری است که مخصوص پردازشهای گرافیکی و محاسبات موازی طراحی شده و در بازیهای ویدئویی، مدلسازیهای سهبعدی و یادگیری ماشین کاربرد دارد.
- پایگاه داده NoSQL: نوعی پایگاه داده که از مدلهای رابطهای استفاده نمیکند و بهجای آن از انواع دادههای غیررابطهای مانند مستندات، کلید-مقدار و گراف استفاده میکند. MongoDB و Cassandra نمونههایی از این نوع هستند.
- مدیریت پروژه نرمافزار (Software Project Management): فرآیند برنامهریزی، نظارت و کنترل پروژههای توسعه نرمافزار بهمنظور تحویل به موقع، با کیفیت و در محدوده بودجه تعیینشده.
- معماری سرویسگرا (Service-Oriented Architecture - SOA): معماریای که از خدمات مستقل برای انجام کارهای مختلف استفاده میکند و این خدمات میتوانند از طریق شبکهها با یکدیگر ارتباط برقرار کنند.
- پایگاه داده رابطهای (Relational Database): نوعی پایگاه داده که دادهها را در جداول سازماندهی میکند و ارتباطات بین دادهها از طریق کلیدهای اولیه و خارجی انجام میشود. سیستمهای مشهور شامل MySQL، PostgreSQL و Oracle هستند.
- شبکههای عصبی (Neural Networks): مدلهایی از هوش مصنوعی که ساختار آنها مشابه با نحوه عملکرد مغز انسان است و برای انجام وظایفی مانند شناسایی الگو، پردازش تصویر و یادگیری ماشین استفاده میشوند.
- توسعه چابک (Agile Development): روشی برای توسعه نرمافزار که تاکید بر همکاری نزدیک با مشتری، تحویل نسخههای کوچک و بهبود مستمر دارد. روشهای معروف شامل Scrum و Kanban هستند.
- کد منبع (Source Code): کدی که توسط برنامهنویسان نوشته میشود و اساس برنامه نرمافزاری را تشکیل میدهد. این کد معمولاً به زبانهای برنامهنویسی سطح بالا نوشته میشود.
- کد تودرتو (Recursion): تکنیکی در برنامهنویسی که در آن یک تابع خود را برای حل یک مشکل فراخوانی میکند. بهویژه در مشکلاتی که ساختار تودرتو دارند، مانند جستجوی درختها یا گرافها، استفاده میشود.
- توسعه نرمافزار شیءگرا (Object-Oriented Software Development): رویکردی برای توسعه نرمافزار که از مفاهیم شیء (کلاس، شیء، وراثت، پلیمورفیسم) برای سازماندهی و مدلسازی سیستمها استفاده میکند.
- پروتکل TCP/IP: مجموعهای از پروتکلها برای ارتباط بین دستگاهها در شبکههای کامپیوتری، که یکی از پرکاربردترین پروتکلها در اینترنت است.
- معماری 64 بیتی (64-bit Architecture): معماریای که از 64 بیت برای پردازش دادهها و آدرسدهی استفاده میکند و توانایی دسترسی به فضای حافظه بیشتری نسبت به معماریهای 32 بیتی دارد.
- برنامهنویسی شبکه (Network Programming): برنامهنویسی برای توسعه اپلیکیشنهایی که قادر به ارتباط با دستگاهها و سیستمهای دیگر از طریق شبکه هستند.
- مدیریت حافظه (Memory Management): فرآیند تخصیص و آزادسازی حافظه در سیستمهای کامپیوتری. مدیریت صحیح حافظه میتواند به بهبود کارایی و جلوگیری از مشکلاتی مانند نشت حافظه کمک کند.
- رابط برنامهنویسی کاربردی (API): مجموعهای از قوانین و ابزارها که برنامهنویسان برای تعامل با سیستمهای نرمافزاری دیگر به کار میبرند. API بهطور معمول برای ایجاد ارتباط بین نرمافزارهای مختلف استفاده میشود.
- پردازش تصویر (Image Processing): فرآیند تحلیل و تغییر تصویر بهمنظور استخراج اطلاعات یا بهبود کیفیت آن، که در زمینههایی مانند پزشکی، عکاسی و شناسایی الگو کاربرد دارد.
- گرافها و الگوریتمهای گراف (Graphs and Graph Algorithms): ساختارهایی برای نمایش روابط بین موجودات و الگوریتمهایی که برای جستجو و تحلیل این روابط استفاده میشوند. الگوریتمهای معروف شامل الگوریتم دایکسترا و الگوریتم جستجوی عمقی و عرضی هستند.
