متن خبر

چگونه یک سیستم بانکداری آنلاین بسازیم – آموزش برنامه نویسی شی گرا پایتون

چگونه یک سیستم بانکداری آنلاین بسازیم – آموزش برنامه نویسی شی گرا پایتون

شناسهٔ خبر: 458978 -




برنامه نویسی شی گرا (OOP) یک مفهوم اساسی در مهندسی نرم افزار است که به مهندسان نرم افزار اجازه می دهد تا کد را به روشی سازمان یافته تر و ماژولارتر ساختار دهند.

پایتون با نحو واضح و مختصر خود یک زبان عالی برای یادگیری و اجرای اصول OOP است.

در این مقاله، با ساختن یک سیستم بانکداری آنلاین ساده، به اصول اولیه OOP در پایتون خواهیم پرداخت.

مروری بر مفاهیم OOP

قبل از شروع کدنویسی، بیایید مفاهیم کلیدی OOP را درک کنیم:

کلاس ها : کلاس ها نقشه هایی برای ایجاد اشیا هستند. آنها صفات (داده ها) و متدها (توابع) را تعریف می کنند که اشیاء آن کلاس خواهند داشت.

اشیاء : اشیاء نمونه هایی از کلاس ها هستند. آنها موجودیت های دنیای واقعی را نشان می دهند و داده ها و رفتار را محصور می کنند.

وراثت : وراثت به یک کلاس (زیر کلاس) اجازه می دهد تا ویژگی ها و متدها را از کلاس دیگر (ابر کلاس) به ارث ببرد. استفاده مجدد از کد را ترویج می کند و از روابط سلسله مراتبی بین کلاس ها پشتیبانی می کند.

سازنده: سازنده ( __init__() ) نوع خاصی از متد است که به طور خودکار هنگام ایجاد یک شی از یک کلاس فراخوانی می شود. هدف اصلی آن، مقداردهی اولیه شی تازه ایجاد شده، تنظیم مقادیر اولیه برای ویژگی های آن یا انجام هر گونه کار راه اندازی ضروری است.

چگونه یک سیستم بانکداری آنلاین بسازیم

بیایید با ایجاد ساختار اساسی برای سیستم بانکداری آنلاین خود با استفاده از اصول OOP شروع کنیم.

چگونه یک کلاس و سازنده ایجاد کنیم

بیایید یک کلاس ایجاد کنیم و کلاس را با سازنده شروع کنیم:

 class Account: def __init__(self, name, account_number, balance): self.name = name self.account_number = account_number self.balance = balance

در مثال بالا:

کلمه کلیدی class یک کلاس Account را اعلام می کند.

متد __init__() سازنده است که با علامت گذاری دوگانه خاص در ابتدا و انتهای آن تعریف شده است.

self اشاره ای به نمونه کلاس است. این اولین پارامتر از تمام متدهای نمونه در پایتون است.

name نام صاحب حساب است.

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

داخل سازنده self.name ، self.account_number و self.balance صفاتی از کلاس Account هستند که به ترتیب با مقادیر name ، account_number و balance مقداردهی اولیه می شوند.

سازنده ها می توانند وظایف مختلفی مانند مقداردهی اولیه ویژگی ها، باز کردن اتصالات، بارگذاری داده ها و موارد دیگر را انجام دهند. آنها برای اطمینان از اینکه اشیاء به درستی تنظیم شده اند و به محض ایجاد آنها برای استفاده آماده هستند، ضروری هستند.

نحوه ایجاد متدها (توابع)

کار بعدی نوشتن متدهای مختلف برای کلاس Account است. کاربران باید بتوانند واریز و برداشت کنند.

نحوه ایجاد روش سپرده گذاری

 def deposit(self, amount): self.balance += amount print(f"{self.name} Deposited {amount} $. Current balance is: {self.balance}")

در مثال بالا:

روش deposit به کاربران امکان می دهد وجوهی را به حساب خود اضافه کنند.

این روش amount پارامتر اضافی را می گیرد که مبلغی است که باید واریز شود.

در داخل روش، amount با استفاده از self.balance += amount به موجودی فعلی اضافه می شود.

پیامی چاپ می شود که نام سپرده گذار و مبلغ واریز شده را نشان می دهد و موجودی به روز می شود.

نحوه ایجاد روش برداشت

 def withdraw(self, amount): if self.balance >= amount: self.balance -= amount print(f"{self.name} Withdrew {amount} $. Current balance is: {self.balance}") else: print("You don't have enough funds to withdraw.")

در مثال بالا:

روش withdraw به کاربران امکان برداشت وجه از حساب خود را می دهد.

این روش همچنین یک پارامتر amount می گیرد که مقداری است که کاربر ما می خواهد برداشت کند.

این روش تحلیل می‌کند که آیا موجودی حساب ( self.balance ) بیشتر یا برابر با مقداری است که کاربر ما می‌خواهد برداشت کند.

اگر موجودی کافی باشد، مبلغ برداشت با استفاده از self.balance -= amount از موجودی حذف می شود.

اگر موجودی کافی نیست، پیامی با این مضمون که "وجوه کافی برای برداشت ندارید." برای کاربر چاپ می شود.

وراثت چگونه کار می کند

با توضیح وراثت در بالا، بیایید ببینیم که چگونه در کد کار می کند. ما قصد داریم کلاسی ایجاد کنیم که کلاس Account را به ارث می برد.

توجه داشته باشید که کلاس Account کلاس supper است، در حالی که کلاس Savings_Account یک زیر کلاس است که به عنوان کلاس فرزند نیز شناخته می شود.

 class Savings_Account(Account): def __init__(self, name, account_number, balance, interest_rate): super().__init__(name, account_number, balance) self.interest_rate = interest_rate

در کد بالا:

متد __init__ سازنده کلاس Savings_Account است.

این چهار پارامتر را می پذیرد: name که نام دارنده حساب است، account_number ، که یک شناسه منحصر به فرد برای حساب پس انداز است، balance که مانده اولیه حساب است، و interest_rate که نرخ بهره سالانه است (بیان شده به صورت یک اعشار) برای حساب.

خط super().__init__(name, account_number, balance) سازنده کلاس والد ( Account ) را فراخوانی می کند تا شماره حساب و موجودی را مقداردهی اولیه کند.

خط self.interest_rate = interest_rate نرخ بهره را برای حساب پس انداز تعیین می کند. ارثی نیست

نحوه ایجاد یک متد add_interest

 def add_interest(self): interest = self.balance * self.interest_rate self.deposit(interest)

در مثال بالا:

روش add_interest محاسبه و به مانده حساب اضافه می کند.

این روش سود را با ضرب موجودی فعلی ( self.balance ) در نرخ بهره ( self.interest_rate ) محاسبه می کند.

نتیجه در متغیر interest ذخیره می شود.

در نهایت، خط self.deposit(interest) روش deposit (تعریف شده در کلاس Account مادر) را فراخوانی می کند تا مبلغ سود را به موجودی حساب اضافه کند.

نحوه ایجاد و استفاده از اشیاء

کلاس شما فقط یک الگو است. شما باید یک شی بسازید تا کلاس شما کار کند.

حال، بیایید از کلاس های خود اشیاء ایجاد کنیم و با آنها تعامل کنیم.

 account1 = Account("John Doe", "123456", 1000) account1.deposit(500) account1.withdraw(200) print() savings_account = Savings_Account("John Doe", "789012", 2000, 0.05) savings_account.deposit(1000) savings_account.add_interest() savings_account.withdraw(500) savings_account.withdraw(1000)
نمونه ای از کلاس حساب

در کد بالا:

ما یک instance account1 از کلاس Account ایجاد کردیم و عملیات واریز و برداشت را انجام دادیم.

به طور مشابه، ما یک نمونه savings_account از کلاس Savings_Account ایجاد کردیم و عملیات سپرده، اضافه سود و برداشت را نشان دادیم.

نتیجه

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

سادگی پایتون آن را به یک انتخاب عالی برای یادگیری و پیاده سازی مفاهیم OOP تبدیل می کند.

با ساختن یک سیستم بانکداری آنلاین ساده، مفاهیم اولیه کلاس‌ها، اشیاء و وراثت در پایتون را به شما نشان می‌دهم.

کد نویسی مبارک!

خبرکاو

ارسال نظر




تبليغات ايهنا تبليغات ايهنا

تمامی حقوق مادی و معنوی این سایت متعلق به خبرکاو است و استفاده از مطالب با ذکر منبع بلامانع است