خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل
نویسنده : امیر انصاری
در این آموزش در ادامه آموزشهای قبلی به طراحی و برنامه نویسی پروژه دفتر تلفن می پردازیم. موضوع فعلی ما بحث اعتبار سنجی داده های ورودی است و در این آموزش به نحوه اعتبار سنجی شماره موبایل می پردازیم. می خواهیم کاری کنیم تا کاربر نتواند شماره موبایل اشتباه را وارد نرم افزار کند و در ضمن می خواهیم الزام بگذاریم که حتما شماره موبایل معرفی نیز گردد.

سیستم یکپارچۀ سازمانی راهکار



اگر آموزشهای قبلی را ندیده اید، به مطالعه این آموزش نپردازید، در واقع این آموزش یک مجموعه سریالی است که مطالب آن بصورت تنگاتنگ در ارتباط با یکدیگر می باشند. برای شروع این دوره آموزشی بر روی لینک آغاز دوره آموزشی کلیک کنید.

آغاز دوره آموزشی

فهرست آموزشهای دوره آموزش برنامه نویسی به زبان ساده از مبتدی تا پیشرفته بصورت کاملا کاربردی

بررسی صحت شماره موبایل


پروژه دفتر تلفن را باز کنید. سپس فرم FrmAddContact را نیز باز کنید. وارد محیط کد نویسی فرم شوید و در تابع (Function) مربوط به اعتبار سنجی که نامش را ValidatingInputData گذاشته ایم، مشابه تصویر زیر کدهایی را اضافه کنید. قسمتهایی را که با رنگ زرد هایلایت کرده ام کدهای جدیدی است که الان اضافه کرده ایم.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

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

حالا می خواهیم یک تکه کد جدید دیگر نیز اضافه کنیم. همانطور که می دانید شماره موبایل باید 11 رقمی باشد. پس ما برای بررسی صحت شماره موبایل وارد شده اولین چیزی را که باید چک کنیم اینست که 11 رقم بیشتر و یا کمتر نباشد. کد زیر این کار را برای ما انجام می دهد.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

به کدی که نوشته شده بیشتر دقت کنید، در قسمت شرط ما گفته ایم :

If txtMobileNumber.Text.Length <> 11 Then


تابع Length که بعد از ویژگی Text قرار داده ایم طول یک متن را محاسبه کرده و برمیگرداند. این هم از آن توابع داخلی ویژوال استودیو می باشد. یعنی کد نویسی مربوط به محاسبه طول یک متن قبلا در آنجا انجام شده است و شما صرفا با نوشتن همین یک کلمه می توانید طول یک متن را که از آن تابع برگردانده می شود، بدانید. در ادامه شرط نامساوی <> را قرار داده ایم. در زبان ویژوال بیسیک دات نت نابرابری را به شکل <> می نویسند.
کد ما دقیقا می گوید :
اگر طول شماره موبایل مخالف با 11 کاراکتر باشد، به کاربر پیغام بدهد که شماره موبایل صحیح نیست. تا اینجا اطمینان حاصل کرده ایم که کاربر حداقل طول شماره موبایل را مجبور است درست وارد کند.

برنامه را اجرا کنید، مقداری را برای نام و نام خانوادگی وارد کنید. در قسمت شماره موبایل شماره 0912123456 را بنویسید. این شماره 10 رقمی می باشد و قطعا شماره صحیحی نیست. بر روی دکمه ثبت اطلاعات، کلیک کنید. مشابه تصویر زیر پیغامی مبنی بر عدم صحت شماره موبایل به شما نمایش داده می شود.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

حالا شماره موبایل را به شکل 09121234567 اصلاح کنید. خواهید دید که برنامه شماره موبایل را صحیح خواهد دانست.

خوب، بیایید یک مثال دیگر بزنیم. شماره موبایل را پاک کنید و بجایش بنویسید 0912123456a و برنامه را تست کنید و ببینید که چه اتفاقی می افتد.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

در کمال تعجب برنامه این شماره موبایل را صحیح می داند و صد البته این یک نقطه ضعف در برنامه ما می باشد، چرا که شماره موبایل فقط می تواند متشکل از اعداد 0 تا 9 باشد و نباید حروف الفبا در آن استفاده شده باشد. در ادامه کد اعتبار سنجی این قسمت را هوشمندانه تر خواهیم کرد تا فقط اعداد 0 تا 9 را معتبر بشناسد.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

در این قطعه کد ما از تابع IsNumeric استفاده کرده ایم. IsNumeric یکی از توابع داخلی ویژوال بیسیک می باشد و کار این تابع به این شکل است که یک متن را به عنوان پارامتر دریافت می کند و آن را بررسی می کند. اگر این متن مقدار عددی داشته باشد، خروجی تابع True است و اگر مقدار غیر عددی داشته باشد، خروجی تابع False می باشد. با علم به این موضوع ما شرطمان را به این شکل گذاشته ایم که اگر خروجی تابع IsNumeric مقداری غیر عددی باشد، یعنی False باشد، برنامه به کاربر هشدار دهد تا شماره موبایل را اصلاح نماید.

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

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

پس الان ما از این بابت هم مطمئن شدیم که کاربر نمی تواند یک شماره موبایل غیر عددی را وارد نماید.

خوب، بیایید مثال دیگری بزنیم، همین مثال را فقط با تغییر شماره موبایل به مقدار 12345678901 تست کنید. تصویر خروجی آن را برای شما در ادامه قرار می دهیم.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

برنامه مقدار 12345678901 را بعنوان یک شماره موبایل صحیح شناسایی می کند و البته با توجه به اعتبار سنجی هایی که تا الان انجام داده ایم، برنامه خروجی صحیحی داشته است. چرا که این شماره اولا 11 رقم دارد و دوما، از اعداد 0 تا 9 تشکیل شده است و حروف الفبا داخل آن وجود ندارد. اما ما منطقا می دانیم که شماره موبایل ها با 09 شروع می شوند. این موضوع را برنامه ما نمی داند. پس بیایید برنامه را کمی هوشمند تر کنیم تا برنامه نیز این موضوع را بداند.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

به قطعه کد زیر با دقت بیشتری نگاه کنید.

If txtMobileNumber.Text.Substring(0, 2) <> "09" Then


این قطعه کد می گوید اگر 2 رقم اول شماره موبایل مخالف 09 باشد، ...

در اینجا برای استخراج دو حرف اول یک متن از تابع Substring استفاده کرده ایم. تابع Substring دو پارامتر می گیرد. پارامتر اول نقطه آغاز متن برای استخراج محتوا می باشد و پارامتر دوم طول متن استخراج شده می باشد. همینجا یک نکته مهم را یاد می گیرید. معمولا در برنامه نویسی شمارش به جای 1 از 0 آغاز می شود. بعنوان مثال در همینجا بجای اینکه بگوییم از نقطه 1 شروع کند می گوییم از نقطه 0 شروع کند. اصطلاحا به این نحوه شمارش Zero Base گفته می شود. پس 0 ما در اینجا یعنی اولین رقم شماره موبایل.
پارامتر دوم ما 2 می باشد، یعنی بطول دو کاراکتر متن استخراج گردد.

مثالهای بیشتر برای درک بهتر کارکرد تابع Substring :

"12345678901".Substring(0, 1) = "1"

"12345678901".Substring(0, 2) = "12"

"12345678901".Substring(0, 3) = "123"

"12345678901".Substring(0, 4) = "1234"

"12345678901".Substring(0, 5) = "12345"

"12345678901".Substring(0, 6) = "123456"

...

"12345678901".Substring(1, 1) = "2"

"12345678901".Substring(2, 2) = "34"


خوب حالا برنامه را اجرا و تست کنید. سعی کنید شماره موبایل را طوری وارد کنید که دو رقم اول آن 09 نباشد. خروجی را در تصویر زیر مشاهده می کنید.

17. آموزش برنامه نویسی به زبان ساده . بررسی صحت شماره موبایل

خوب. خروجی کار شگفت انگیز شد. ما با اندکی وقت گذاشتن و عمیق شدن روی موضوع توانستیم یک کد قدرتمند بنویسیم که امکان ثبت شماره موبایل اشتباه را از کاربر بگیرد و کاربر به ناچار باید شماره موبایل را به شکل صحیحی وارد نماید.

یک نکته مهم در مورد آموزش امروز


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

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

خوب حالا وقتشه پروژه تون رو ذخیره کنید. برای ذخیره کردن پروژه وارد منوی FILE و سپس زیر منوی Save All شوید.

پروژه شما با موفقیت ذخیره شد. حالا ویژوال استودیو را ببندید تا آموزش بعدی.

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

دانلود پروژه دفتر تلفن


آموزش قبلی : 16. آموزش برنامه نویسی به زبان ساده . استفاده از توابع داخلی (توابع پیش فرض)

آموزش بعدی : 18. آموزش برنامه نویسی به زبان ساده . ذخیره سازی اطلاعات برنامه



نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.