آموزش Serialize و Deserialize در سی شارپ(بخش اول)
جلسات دوره
مهدی عباسی
مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و .... مشاهده رزومه
یادگیری Serialize و Deserializeدر سی شارپ:
کسانی که قصد دارند داده هایی را در سطح شبکه انتقال دهند همیشه یک دغدغه ایی وجود دارد که این داده ها باید به چه شکلی منتقل شوند، در واقع آیا داده هایی که داخل برنامه داریم به همان شکل قابل ذخیره سازی و انتقال هستند یا باید تغییراتی روی آن ها انجام دهیم تا بتوانیم در منابع مختلف در سطح شبکه از آن ها استفاده کنیم.
فرض کنید شما برنامه ایی مینویسید و اطلاعاتی را ذخیره میکنید و در نهایت قراراست این اطلاعات توسط اپلیکیشن ها یا زبان های برنامه نویسی دیگر قابل دسترس باشد و بتوانند ازآنها استفاده کنند. مثلا ما یک وب سایت طراحی میکنیم، داده ی آن داخل حافظه ای خارج از کامپیوتر خود در سطح سرور ذخیره میشود و قراراست آن اطلاعات توسط اپلیکیشن اندرویدی یا ویندوزی بازیابی و استفاده شوند، اگر بخواهیم این کار را انجام دهیم باید یک سری قواعد را رعایت کنیم و داده ایی را که ذخیره میکنیم، که بر پایه آن قواعد باشد تا در سطح گیرنده، در اپلیکیشن های مقصد قابل بازیابی باشد.
به همین منظور میخواهیم عملیات Serialize و Deserialize را در سی شارپ به طور مفصل با مثال های متعدد به شما عزیزان توضیح دهیم. که یکی از کلیدی ترین ابزارها و فرآیندهای کاری برای محیط های توسعه وب میباشد.
Serialize: به تبدیل اشیاء به داده ها یا جریان داده ایی قابل انتقال یا قابل ذخیره گفته میشود.
ما در برنامه ها با اشیا کار میکنیم، مثلا شی ایی از کلاس preson، book و... در واقع اشیایی هستند که داخل برنامه ایجاد و با آن ها کار میکنیم و در نهایت می خواهیم اطلاعات را انتقال دهیم یا ذخیره کنیم. وقتی می خواهیم این اطلاعات را داخل یک فایل انتقال دهیم به این عمل، یعنی تبدیل شی preson به داده ایی از جنس filestream ( که در جلسه قبل توضیح دادیم) به یک جریان داده، serialize گفته میشود.
Deserialize: به تبدیل یک جریان داده ایی به object یا شی گفته میشود.
مثلا اطلاعاتی که داخل یک filestream ذخیره شده است و به شی تبدیل میشود. ما درسطح برنامه با objecet کار میکنیم و در سطح فایل با stream ها کار میکنیم.
این آموزش شامل موارد زیر می باشد:
-
آشنایی با مفاهیم XML و JSON
Xml مخفف عبارت Exteraible Markup Language به معنی زبان نشانه گذاری قابل توسعه میباشد. شبیه html میباشد، اما امکان توسعه تگ ها توسط برنامه نویس وجود دارد. ما در این زبان تلاش میکنیم داده ها را دریک قالب ذخیره کنیم، پس در واقع فایل های xml که فایل هایی با پسوند xml هستند داده ها و یا اطلاعات موجودیت ها را ذخیره میکنند. به عبارتی برای نگهداری و انتقال اطلاعات استفاده میشود.
Json مخفف عبارت Object Notation JavaScript به معنی نشانه گذاری اشیا در جاوا اسکریپت است. این روش نشانه گذاری، که قالب نشانه گذاری object ها در جاوا اسکریپت را تعیین میکند، اولین بار برای زبان جاوا اسکریپت اتفاق افتاد و قرار شد که به کمک این فرمت بتوانند object های جاوا اسکریپت را نگهداری کند. اما الان فقط وابسته به جاوا اسکریپت نیست و توسط زبان های برنامه نویسی دیگر هم استفاده میشود. مانند Xml برای ذخیره و انتقال داده می باشد. json نسبت به xml ساده تر و حجم داده ایی کمتری دارد.
- سریالایز کردن اشیاء و ذخیره آن ها به صورت جریان های داده ایی
- دی سریالایز کردن جریان های داده ایی و ساخت اشیاء از روی آن ها
- Serialize و Deserialize فایل های XML
- Serialize و Deserialize فایل های JSON
برای یادگیری این مبحث مثال ها و نکته های متعددی را در فایل ویدئویی آورده ایم که با تهیه این درس و مشاهده ویدئو ها به طور کامل به این مبحث مسلط خواهید شد.
امیدواریم که این آموزش، برای شما دوستان درسمنی عزیز مفید باشد، درصورت سوال و یا مشکل می توانید به انجمن برنامه نویسان سی شارپ مراجعه کنید. پیشنهادات و انتقادات خود را در بخش نظرات برای ما ارسال کنید.
انجمن برنامه نویسان سی شارپ
نظر شما در تصمیم دیگران اثرگذار است.
لطفا برای همراهان درسمن و بهتر شدن دوره نظر خود را بنویسید.