یک بیت کوچکترین واحد ذخیرهسازی داده است که تنها میتواند یکی از دو مقدار 0 یا 1 را نگهداری کند.
سازنده (Constructor) یک متد خاص است که به هنگام ایجاد شیء جدید از یک کلاس فراخوانی میشود. وظیفه سازنده این است که ویژگیهای اولیه شیء را تنظیم کند و فرآیند ایجاد شیء را تکمیل کند. سازندهها در بیشتر زبانهای برنامهنویسی شیءگرا مانند Python، Java و C++ وجود دارند و نقش مهمی در ایجاد و مقداردهی اولیه شیءها دارند.
سازندهها معمولاً به طور خودکار به هنگام ایجاد شیء از کلاس فراخوانی میشوند و نیازی به فراخوانی صریح آنها نیست. این متد به طور معمول نامی مشابه نام کلاس خود دارد و هیچ مقداری (مانند return) باز نمیگرداند. وظیفه اصلی سازندهها مقداردهی اولیه به ویژگیهای شیء است و در بعضی زبانها مانند Python میتوانند پارامترهایی نیز داشته باشند.
در اینجا یک مثال از استفاده از سازنده در زبان Python آورده شده است:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
return f"Hello, my name is {self.name} and I am {self.age} years old." # ایجاد شیء از کلاس Person person1 = Person("John", 30) print(person1.greet()) # خروجی: Hello, my name is John and I am 30 years old. در این مثال، متد __init__ به عنوان سازنده برای کلاس Person عمل میکند. زمانی که شیء person1 ایجاد میشود، سازنده __init__ به طور خودکار فراخوانی شده و ویژگیهای name و age را مقداردهی میکند. سپس، متد greet برای نمایش اطلاعات شیء فراخوانی میشود.
در زبان Java، سازندهها به شکل زیر تعریف میشوند:
public class Person {
private String name;
private int age;
// سازنده
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String greet() {
return "Hello, my name is " + this.name + " and I am " + this.age + " years old.";
}
public static void main(String[] args) {
Person person1 = new Person("John", 30);
System.out.println(person1.greet()); // خروجی: Hello, my name is John and I am 30 years old.
} } در اینجا، سازنده Person از نوع public تعریف شده و پارامترهای name و age را از طریق دستور this به ویژگیهای شیء اختصاص میدهد. مشابه با Python، هنگامی که شیء person1 ایجاد میشود، سازنده فراخوانی میشود تا مقادیر اولیه تنظیم شود.
سازندهها میتوانند پارامترهای مختلفی داشته باشند و در بعضی زبانها مانند C++، ممکن است بیش از یک سازنده با پارامترهای مختلف وجود داشته باشد که به آنها سازندههای بارگذاری شده (Overloaded Constructors) میگویند. به این ترتیب، میتوان شیءها را با ویژگیهای مختلف ایجاد کرد.
سازندهها به شما این امکان را میدهند که شیءها را بهطور مؤثر و بهینهتری مقداردهی کنید و فرآیند ایجاد شیء را بهطور سادهتر و سازمانیافتهتری انجام دهید. این مفهوم یکی از ارکان اصلی برنامهنویسی شیءگرا است که باعث افزایش انعطافپذیری، کپسولهسازی و نگهداری آسانتر کد میشود.
برای اطلاعات بیشتر، میتوانید از سایت saeidsafaei.ir و اسلایدهای محمد سعید صفایی بهرهبرداری کنید.
در این مبحث، به مقدمهای بر برنامهنویسی پرداخته و مفاهیم اساسی آن شامل تعریف برنامهنویسی، اهمیت برنامهنویسی، روشهای ترجمه کد، انواع زبانهای برنامهنویسی، و مهارتها و محیطهای برنامهنویسی بررسی میشود. هدف این جلسه، آشنایی با اصول پایهای برنامهنویسی و درک نحوه انتخاب زبان و محیط مناسب برای نوشتن برنامههای کاربردی است.
یک بیت کوچکترین واحد ذخیرهسازی داده است که تنها میتواند یکی از دو مقدار 0 یا 1 را نگهداری کند.
پایه یا مبنا در ریاضیات به معنای تعداد رقمهای منفردی است که برای نوشتن عدد در دستگاه عددنویسی با ارزش مکانی لازم است. این پایه به تعیین سیستمهای عددی کمک میکند که میتواند از ارقام مختلف تشکیل شود، مانند سیستم دهدهی، دودویی، و غیره.
مرکز کنترل شبکه که مسئول مدیریت و تخصیص منابع در شبکه است، بهویژه در روشهای دسترسی پویا مانند DDMA.
ویژگیای که مانع از ارسال اطلاعات مسیرهای یاد گرفته شده از همان رابط به شبکههای دیگر میشود.
یادگیری ماشین خصمانه به استفاده از الگوریتمهایی گفته میشود که مدلهای یادگیری ماشین را از حملات خصمانه برای اختلال در تصمیمگیریهای آنها محافظت میکنند.
محدودهای از شبکه که در آن اگر دو دستگاه به طور همزمان داده ارسال کنند، برخورد (Collision) رخ میدهد.
لایهای که مسئول ترجمه، رمزنگاری و فشردهسازی دادهها برای استفاده در لایه کاربرد است.
عملیات ماشین یادگیری (MLOps) شامل توسعه و استقرار مدلهای یادگیری ماشین به صورت مقیاسپذیر و کارآمد است.
شبکههای خودترمیمی به شبکههایی اطلاق میشود که قادر به شناسایی و اصلاح خطاها یا مشکلات خود بهطور خودکار هستند.
سیستمعامل نرمافزاری است که به مدیریت منابع سختافزاری و نرمافزاری کامپیوتر پرداخته و برنامهها را اجرا میکند.
الگوریتمی که برای محاسبه کوتاهترین مسیر از یک گره به سایر گرهها استفاده میشود، معمولاً در پروتکلهای Link-State.
عملگر سهگانگی یک روش فشرده برای نوشتن دستورات شرطی است که معمولاً به صورت condition ? expression1 : expression2 نوشته میشود.
حریم خصوصی دادهها به روشهایی اطلاق میشود که دادههای حساس را از دسترسی غیرمجاز محافظت میکنند.
ساختارهایی در برنامهنویسی شیگرا هستند که دادهها و متدهای مربوط به آنها را به یک واحد منطقی گروهبندی میکنند.
فایروال سیستم امنیتی است که دسترسی غیرمجاز به شبکههای کامپیوتری را کنترل میکند.
آرایه ایستا، آرایهای است که در آن اندازه از قبل تعریف میشود و نمیتوان در زمان اجرا اندازه آن را تغییر داد.
ابرکامپیوترها بزرگترین و سریعترین نوع رایانهها هستند که برای پردازش حجم زیادی از دادهها و انجام محاسبات پیچیده طراحی شدهاند.
تحلیل پیشبینی به استفاده از دادههای گذشته و الگوریتمهای مدلسازی برای پیشبینی وقایع آینده اطلاق میشود.
درمان واقعیت مجازی به استفاده از تکنولوژی VR برای درمان و بهبود بیماریها اشاره دارد.
بلاکچین در زنجیره تأمین به استفاده از فناوری بلاکچین برای ردیابی و تأمین شفافیت در فرآیندهای زنجیره تأمین اطلاق میشود.
هوش مصنوعی نسل بعدی به پیشرفتها و روشهای جدید در هوش مصنوعی گفته میشود که بهطور خاص برای حل مسائل پیچیده طراحی شدهاند.
نویز ناشی از حرکت الکترونها در مواد نیمههادی یا فلزات که در اثر حرارت ایجاد میشود.
نوع دادهای است که برای ذخیرهسازی یک کاراکتر مانند حرفها یا نشانهها استفاده میشود.
شبکههای مجازیشده به شبکههایی اطلاق میشود که از فناوری مجازیسازی برای ایجاد و مدیریت منابع شبکه استفاده میکنند.
بلاکچین در مراقبتهای بهداشتی به استفاده از فناوری بلاکچین برای مدیریت، ردیابی و تأمین شفافیت در سوابق پزشکی اطلاق میشود.
توانایی یک سیستم در پاسخدهی به تغییرات مقیاس در بار کاری و افزایش ظرفیت به طور مؤثر.
فاکتوریل یک عدد n با ضرب آن در تمام اعداد صحیح مثبت کوچکتر از خودش تعریف میشود. این مقادیر بهطور معمول برای محاسبات ریاضی یا بازگشتی استفاده میشوند.
هوش مصنوعی برای شخصیسازی به استفاده از الگوریتمهای هوش مصنوعی برای ایجاد تجربیات سفارشی برای کاربران و بهبود تعاملات اطلاق میشود.
محاسبات هولوگرافیک به استفاده از فناوریهای هولوگرام برای پردازش و تجزیه و تحلیل دادهها در فضای سهبعدی اشاره دارد.
جدولی که در آن آدرسهای MAC و IP دستگاههای متصل به شبکه ذخیره میشود.
محاسبات ابری بومی به استفاده از معماریهای ابری برای توسعه و اجرای برنامهها گفته میشود که مقیاسپذیر، انعطافپذیر و خودکار هستند.
توزیع کلید کوانتومی (QKD) به استفاده از اصول فیزیک کوانتومی برای تولید و توزیع کلیدهای رمزنگاری بهصورت ایمن اشاره دارد.
متد مشابه به تابع است اما معمولاً در زبانهای شیگرا استفاده میشود و متعلق به یک کلاس خاص است. متدها میتوانند بر روی دادههای شی عمل کنند.
پردازش دادهها در زمان واقعی به تحلیل و پردازش دادهها بلافاصله پس از دریافت آنها گفته میشود، بدون نیاز به ذخیرهسازی طولانیمدت.
هوش مصنوعی برای امنیت سایبری به استفاده از تکنولوژیهای هوش مصنوعی برای شناسایی و جلوگیری از تهدیدات امنیتی اشاره دارد.