INGBM

گپ و گفتی پیرامون مهندسی نرم افزار و هوش مصنوعی

INGBM

گپ و گفتی پیرامون مهندسی نرم افزار و هوش مصنوعی

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

کلمات کلیدی
بایگانی
۰۲
شهریور

Advanced Programing

  1. Correctness (testing, debugging)
  2. Maintainable (object oriented methodology, coding style)
  3. Reusability (object orented)

(1)


در پست قبل به عنوان مقدمه به این پرداختیم که چرا نیاز به یک زبان برنامه نویسی داریم. بسیاری از ما قواعد یکی از زبانهای برنامه نویسی را بلد هستیم و برنامه هایی با اون نوشتیم، اما چرا نیازه که برنامه نویسی پیشرفته رو داشته باشیم؟! اساسا برنامه نویسی پیشرفته برای افزایش کیفیت (quality) کد در سه حوزه زیر تمرکز می کند: [1]

  • Correctness: کد واقعا اون کاری که بهش محول شده رو به درستی انجام بده برای این منظور نیاز هست تا با مفاهیم و تکنیک های Testing و Debugging آشنا بشیم.
  • Maintainable: یعنی کدمون این قابلیت رو داشته باشه که در آینده ویژگیهای جدیدی رو بهش اضافه کنیم یا ایرادات احتمالی رو برطرف کنیم. این ویژگی یک نیاز حیاتی هست و هر چقدر در این زمینه وقت بذاریم ضرر نمیکنیم، خصوصا در برنامه های بزرگ.
  • Reusability: در یک کلام یعنی بلد باشیم از کتابخانه های آماده استفاده کنیم و خودمون هم طوری کد بزنیم که بشه جاهای مختلف ازش استفاده کرد. متدولوژی شی گیرایی (object oreiented) این کمک رو به ما میکنه که کدی بنویسیم که بشه جاهای مختلف ازش استفاده کرد.
  • غلامرضا کوهنورد مقدم
۰۱
شهریور

قراره در مورد برنامه نویسی پیشرفته صحبت کنیم. در این پست به عنوان یک مقدمه مروری بر مفهوم کلمات برنامه، برنامه نویسی داریم و در پست بعدی در مورد برنامه نویسی پیشرفته صحبت می کنیم.

برنامه و برنامه نویسی

مردم هر جایی به یک زبان صحبت میکنن، اگر درخواستی از آنها داریم باید به زبان آنها صحبت کنیم.مردم تو هر جایی با یک زبان خاصی صحبت می کنن و ما وقتیدرخواستی از اونها داریم مجبوریم که به زبان خودشون بیان کنیم.

ماشین ها یا در بحث ما کامپیوترها هم از این قاعده مستثنی نیستند. قابلیت کامپوترها در محاسبه (calculation) و تصمیم گیریهای منطقی (Logical decision making) بسیار بالاتر از انسان هست [1]. برای اینه بتونیم از اونها برای انجام کارهامون کمک بگیریم مجبوریم به زبان خودشان حرف بزنیم.

زبان ما انسانها از حرف، کلمه و جمله و ... تشکیل میشه. زبان یک کامپبوتر هم به طور مشابه از اجزای زیر تشکیل میشه:سلسله مراتب داده ها

  • بیت (Bit): کوچکترین جزء زبان کامپیوتر است و تنها از دو عدد 0 و 1 تشکیل شده.
  • بایت (Byte): به صورت تاریخی تعداد بیتهایی لازم برای ذخیره کردن یک کارکتر (مثل ح، A، @ و ...)‌ بایت گفته می شود [2]. بسته به سخت افزار یک ماشین می تواند دارای انواع متفاوتی باشد ولی امروزه معمولا هر هشت بیت یک بایت رو تشکیل میده [2].
  • فیلد (Field): به گروهی (group) از بایتها که یک معنی خاصی رو منتقل می کنند (conveys meaning) یک فیلد می گویند، مثل: جواد، 1372 و ... [1].
  • رکورد (Record): یک رکورد از چند فیلد مرتبط با هم (related fields) تشکیل می شود مثلا یک رکورد ممکنه از نام، نام خانوادگی، شماره شناسنامه و معدل تشکیل شده باشد[1].
  • فایل (File): گروهی از رکوردهای مرتبط (group of related records) یک فایل را تشکیل می دهند[1].

  • غلامرضا کوهنورد مقدم