عنوان
|
نويسنده
|
مشاهده
|
تعداد
آراء |
امتياز
|
کتابخانه کلاس فريمورک دات نت ( بخش دوم ) |
مديريت وب |
9488 |
9 |
3.1 |
با توجه به جایگاه داده در عصر حاضر و لزوم نگاه جامع به این مقوله مهم ، بر آن شدیم تا محوریت فعالیت های خود را بر روی این موضوع متمرکز نمائیم . از این رو گروه فابک با شعار فناوری اطلاعات برای کسب وکار شکل گرفت و خدمات خود را از طریق سایت www.fabak.ir به مخاطبان محترم عرضه می نماید
 |
کتابخانه کلاس فريمورک دات نت
کتابخانه کلاس فريمورک دات نت ( بخش دوم )
در
بخش اول
اين مقاله ، مفاهيم و جايگاه کتابخانه کلاس فريمورک دات نت تشريح و به عملکرد
برخی از namespace ها ، اشاره گرديد . در
اين بخش به بررسی ساير namespace ها پرداخته و با آنها
بصورت اجمالی آشنا خواهيم شد.
System.Diagnostics
، شامل تعداد زيادی کلاس ، اينترفيس و ساختارهای لازم بمنظور اشکال
زدائی برنامه های فريمورک دات نت است. مثلا" کلاس
Trace ، امکان رديابی خطاء را با استفاده از تسهيلات
خاصی ، فراهم می نمايد .( افزودن کد مورد نظر بمنظور بررسی شرايطی خاص در برنامه )
. کلاس Debug موجود در اين namespace
، سرويس های مشابهی را ارائه و می توان از امکانات آن در زمان پياده سازی استفاده
کرد.
فراموش نکنيم
که : |
System.Diagnostics
، امکانات لازم در خصوص رديابی ، اشکال زدائی و ساير موارد مشابه را ارائه می
نمايد.
|
System.DirectoryServices
، شامل نوع هائی برای دستيابی به Active Directory و
ساير سرويس های دايرکتوری است . قبل از دات نت ، روش استاندارد دستيابی
به سرويس های ويندوز بکمک اينترفيس های مبتنی بر عناصر COM
، محقق می گرديد. Active Directory بعنوان نمونه می
توانست از طريق
Active Directory Services Interface)ADSI)
، دستيابی گردد . نوع های موجود در namespace فوق ، قابل
مقايسه با ADSI می باشند .
فراموش نکنيم
که : |
System.DirectoryService ، يک
API مناسب در ارتباط با Active
Directory را ارائه می نمايد. |
System.Drawing
، مجموعه ای گسترده از نوع ها را بمنظور استفاده از سرويس های آخرين نسخه GDI)Graphice
Device Interface) ماکروسافت ارائه می نمايد (+GDI
ناميده می شود) . System.Drawing ، شامل کلاس هائی برای
کار با Pens,Brushes وساير ابزارهای ترسيم است .
namespace فوق، دارای چندين namespace
زيرمجموعه است. مثلا"
System.Drawing.Drawing2D ، شامل نوع هائی برای توابع
مربوط به عمليات گرافيکی دوبعدی و Vector graphic است و
يا System.Drawing.Imaging ، شامل نوع هائی است که می
توان از آنان بمنظور کار با متا فايل ها و ساير تصاوير پيشرفته
GDI ، استفاده کرد.System.Drawing.Printing ،
شامل نوع هائی است که امکان کنترل چاپگر را فراهم و يا
System.Drawing.Text شامل نوع هائی است که امکان عمليات بر روی فونت ها را
فراهم می نمايد.
فراموش نکنيم
که : |
System.Drawing
، امکانات لازم در خصوص ايجاد متن و انواع متفاوتی از گرافيک را فراهم می نمايد.
|
System.EnterpriseServices
، شامل نوع هائی است که می توان از آنان بمنظور دستيابی به سرويس های ارائه شده
توسط
+
COM ، استفاده نمود (حمايت از تراکنش توزيع شده ،
Object pooling ). برخلاف اکثر توابع ارائه شده توسط
کتابخانه کلاس فريمورک دات نت ، نوع های موجود در namespace
فوق در ارتباط با نرم افزارهای موجود مبتنی بر+
COM می باشند ( در مقابل پياده سازی مجدد آن بعنوان کد مديريت يافته )
.
فراموش نکنيم
که : |
System.EnterpriseService
، امکان دستيابی به سرويس های +
COM را فراهم می نمايد.
|
System.Globalization
، شامل نوع هائی بمنظور ايجاد تقويم های ملی ، تبديل
صفحات به کدينگ ملی ، فرمت مناسب تاريخ و زمان و سايرجنبه هائی است که از
آنان بمنظور ايجاد نرم افزارهائی با قابليت استفاده در فرهنگ های متفاوت ، استفاده
می گردد. جهانی نمودن نرم افزار دارای اهميت خاص خود بوده و اغلب توابع پايه
فريمورک دات نت بصورت اتوماتيک Culture-aware می باشند.
فراموش نکنيم
که : |
System.Globalization
، امکان توليد نرم افزار با قابليت استفاده در فرهنگ های متفاوت را فراهم می نمايد.
|
System.IO
، مجموعه ای گسترده از نوع ها را بمنظور خواندن و نوشتن فايل ها و دايرکتوری
ها ، ارائه می نمايد. با اينکه دستيابی به سيستم های مديريت بانک
اطلاعاتی ، اغلب بعنوان اصلی ترين رويکرد بمنظور دستيابی به داده ها مطرح می گردد ،
ولی امکان انجام عمليات مرتبط با فايل ها ، همچنان مفيد و ضروری خواهد بود .
فراموش نکنيم
که : |
System.IO
، امکان دستيابی به فايل ها و دايرکتوری ها را فراهم می نمايد.
|
System.Management
، نوع هائی را بمنظور دستيابی به داده (WMI(Windows Management Instrumentaion
، از طريق کدهای مديريت يافته ( اداره شده ) فراهم می نمايد. WMI
، نسخه پياده سازی شده ماکروسافت در رابطه با نوآوری Web-Based Enterprise
Management)WBEM) ، حمايت شده توسط تعداد زيادی
از توليدکنندگان است .
تعدادی از نوع های موجود در namespace فوق ، امکانات
حمايتی لازم را در خصوص WMI Query Language)WQL) ، ( يک
گويش خاص از SQL با تاکيد بر دستيابی به اطلاعات مرتبط
با WMI ) را فراهم می نمايد.
فراموش نکنيم
که : |
System.Management ،
امکانات لازم در خصوص کار با داده های WMI را ارائه می
نمايد.
|
System.Messaging
، نوع هائی را بمنظور دستيابی به Microsoft Message Queuing)MSMQ)
ارائه می نمايد . MSMQ ، دارای چنديت
API ديگر نظير يک API مبتنی
بر COM و يک API تعريف شده
بعنوان مجموعه ای از توابع C است . نوع های
namespace فوق ، API ديگری را
تعريف که می توان از آن در کد مديريت يافته ، استفاده کرد .
فراموش نکنيم
که : |
System.Messaging
يک API را برای MSMQ
ارائه می نمايد.
|
System.Net
، شامل نوع هائی بمنظور دستيابی به چندين پروتکل متداول نظير: HTTP و
DNS است . namespace فوق ،
همچنين شامل کلاس های
WebRequest و WebResponse
بوده که امکان ايجاد برنامه هائی را فراهم می نمايد که قادرند مستقل از نوع
پروتکل استفاده شده ، با يکديگر ارتباط برقرار نمايند . اين نوع برنامه ها می
توانند بسادگی درخواستی را ايجاد و پاسخ آن را از طريق يک URL
بدون آگاهی از جزئيات مربوطه ، دريافت
نمايند.
System.Net ، همچنين شامل namespace زيرمجموعه
System.Net.Sockets است . نوع ها ی موجود در
namespace فوق ، يک پياده سازی مديريت يافته از اينترفيس
های مبتنی بر سوکت سنتی در ارتباط با TCP و يا
UDP مربوط به WinSock
برای توليدات مبتنی بر دات نت ، می باشد .
فراموش نکنيم
که : |
System.Net ، امکانات حمايتی لازم
بمنظور دستيابی به
HTTP,TCP و ساير پروتکل ها را فراهم می نمايد.
|
System.Reflection
، شامل مجموعه ای گسترده از نوع ها ، بمنظور بررسی يک متاديتا اسمبلی است .
System.Reflection.Emit ، يک namespace زير
مجموعه است که نوع های لازم بمنظور ايجاد ساير نوع ها بصورت پويا را ارائه می
نمايد ..
فراموش نکنيم
که : |
System.Reflection ، امکان دستيابی به
متاديتای اسمبلی را فراهم می نمايد.
|
System.Resources
، نوع های لازم بمنظور عمليات مورد نياز کد مديريت يافته ( اداره شده ) در
ارتباط با منابع را فراهم می نمايد. منابع ، بخشی از يک برنامه بوده که
می توانند از کد مربوطه تفکيک گردند.( نظير يک پيام رشته ای ، آيکون ها ،
Bitmap ) . يکی از کاربردهای اوليه نوع های اين
namespace ، امکان نمايش منابع متفاوت توسط يک برنامه در فرهنگ های متفاوت
است . بعبارت ديگر ، محتويات اين
namespace بصورت کاملا" خاص با جهانی نمودن يک نرم افزار که می بايست در
کشورهای متفاوت و با زبانهای متعدد فعاليت نمايند ، مرتبط می باشند .
فراموش نکنيم
که : |
System.Resources
، امکان عمليات بر روی منابع را فراهم می نمايد.
|
System.Runtime ، يک
namespace مادر بوده که خود دارای چندين
namespace مهم ديگر است . System.Runtime.CompilerServices
شامل نوع هائی است که از آنان برای نوشتن کمپايلر مختص يک زبان سازگار با CLR
، استفاده می گردد و صرفا" برای پياده کنندگان نرم افزار خاصی قابل استفاده است . System.Runtime.InteropServices
، يکی از
namespace های مهم در کتابخانه کلاس فريمورک دات نت است
. namespace فوق ، شامل نوع هائی است که تسهيلات لازم در
خصوص ارتباط با نرم افزارهائی که مبتنی بر CLR نمی
باشند ، را فراهم می نمايند. ( نظير کلاس هایCOM)
System.Runtime.Remoting ، يکی ديگر از
تکنولوژی های مهم و شناخته شده با نام NET Remoting . ، است .
System.Runtime.Serialization ، شامل نوع هائی است که از
آنان برای Serializing وضعيت يک شی مديريت يافته ،
استفاده می گردد . Serializing يک شی مديريت يافته
بدين مفهوم است که وضعيت آن درون حافظه و يا برخی از رسانه های ذخيره سازی دائم
نظيريک فايل ، ذخيره می گردد . پتانسيل انجام عمليات در ارتباط با وضعيت يک
شی ، يکی از ويژگی های اساسی فريمورک دات نت بوده که توسط NET
Remoting . ، استفاده می گردد .
فراموش نکنيم
که : |
System.Runtime، امکانات لازم و حمايتی در رابطه با
Interoperability,Remoting,Serialization و ساير سرويس های اساسی را فراهم
می نمايد .
|
System.Security ، شامل کلاس
ها ، اينترفيس ها و ساير namespace هائی است که توابع
متفاوت مرتبط با امنيت را ارائه می نمايد. namespace فوق
، شامل چندين کلاس اساسی نظير : کلاس SecurityManager
بوده که نفطه آغازين دستيابی برای کار با سيستم امنيتی است .
System.Security.Cryptography ، شامل نوع هائی برای استفاده از سرويس
های رمز و رمزنگاری کليد عمومی است . نوع های فوق ، قادر
به دستيابی به Windows Cryptographic Service Providers)CSP)
بوده که الگوريتم هائی نظير :ِ DES ,RC2 و
RSA را پياده سازی و ارائه می نمايد.
System.Security.Cryptography خود دارای دو namespace
ديگر است . يکی ازآنها
System.Security.Cryptography.X509Certificates ، نام
داشته و شامل کلاس هائی بمنظور ايجاد و استفاده از X.509
نسخه سه کليد عمومی برای استفاده همراه با تکنولوژی Authenticode
ماکروسافت است . namespace ديگر ،System.Security.Cryptography.Xml
نام داشته و شامل مکانيزمی خاص در دات نت بمنظور امضاء
ديجيتالی داده هائی است که توسط XML تشريح می گردند .
System.Security ، همچنين دارای سه
namespace زيرمجموعه ديگر است .System.Security.Permissions
، نوع های لازم در خصوص مجوزها را ارائه می نمايد ( دستيابی ايمن به کد)
System.Security.Policy ، کلاس هائی را نظير
Site , URL,Publish,Zone را ارائه که می
توان از آنان در تعريف سياست های امنيتی استفاده کرد.System.Security.Principal
، شامل نوع هائی بمنظور کار با اصول امنيتی است .
فراموش نکنيم
که : |
System.Security ،
امکانات حمايتی لازم در رابطه با رمزنگاری و ساير سرويس های امنيتی را ارائه می
نمايد.
|
System.ServiceProcess
، شامل نوع هائی برای ايجاد برنامه های فريمورک دات نت است که بصورت پردازه های
Long-lived ( سرويس های ويندوز ) ، اجراء می گردند. اين
نوع برنامه ها قبلا" يک سرويس NT و يا demon
ناميده می گرديدند .
فراموش نکنيم
که : |
System.ServiceProcess
، امکان ايجاد سرويس های ويندوز را فراهم می نمايد.
|
System.Text
، شامل گروهی اندک از کلاس ها بمنظور کار با متن است . مثلا" کلاس
UTF8Encoding مربوط به namespace فوق ، قادر به
تبديل کاراکترهای Unicode از
encoding پيش فرض به UTF-8 و بالعکس است .
UTF از کلمات Unicode Transformation
Format ، اقتباس و با کاراکترهای شناخته شده اسکی سازگار می باشد.
System.Text ، همچنين شامل System.Text.RegularExpressions
است . نوع های تعريف شده در namespace فوق ، امکان
دستيابی به Regular expression را که می توان از آنان در
هر زبان مبتنی بر CLR استفاده بعمل آورد را فراهم
می نمايد.
فراموش نکنيم
که : |
System.Text
، امکانات حمايتی لازم را در ارتباط با تبديل متن و کار با Regular Expression
ارائه می نمايد.
|
System.Threading
، يکی ديگر از namespace های مهم فريمورک دات نت
محسوب می گردد. نوع های موجود در namespace فوق ، روشی
استاندارد برای پياده کنندگانی که با هر يک از زبانهای دات نت کار می نمايند را
بمنظور ايجاد برنامه های multithreaded ارائه می
نمايد. قبل از دات نت ، ويژوال بيسيک ، ++C و ساير
زبانها جملگی دارای رويکرد مختص بخود بمنظور threading
بودند. در فريمورک دات نت تمامی زبان های مبتنی بر CLR ، قادر به
استفاده از محتويات System.Threading بمنظور کار
بار threads بصورت يکپارچه می باشند . شايد
مهمترين نوع در اين namespace ، کلاس Thread
باشد که متدهای لازم بمنظور شروع فعاليت يک thread
، توقف آن و ساير عمليات مربوطه را ارائه می نمايد.
فراموش نکنيم
که : |
System.Threading
، امکانات لازم در خصوص ارائه سرويس های استاندارد threading
بمنظور استفاده توسط تمامی زبانهای سازگار با CLR را
ارائه می نمايد.
|
System.Timers
، شامل نوع هائی برای مشخص نمودن و برخورد با رويدادهای بازگشتی است . مهمترين کلاس namespace
فوق ،Timer بوده که امکان تعريف يک بازه زمانی را
بعنوان بخشی از کلاس
Timer بمنظور تحقق يک رويداد در يک برنامه در
اختيار پياده کننده نرم افزار قرار می دهد . برنامه در ادامه رويداد را تشخيص و
عمليات لازم در ارتباط با آن را انجام خواهد داد . مثلا" يک برنامه ممکن است قصد
بررسی يک نامه الکترونيکی جديد را در هر ده دقيقه داشته باشد. با استفاده از
مکانيزم فوق ، پياده کنندگان قادر به بررسی رويداد فوق در فاصله زمانی
مورد نظر (در هر ده دقيقه ) و اجرای کد مربوطه بمنظور پاسحگوئی خواهند بود.
فراموش نکنيم
که : |
System.Timers
، امکانات حمايتی لازم در رابطه با انجام عمليات لازم و متناسب با
رويدادها را فراهم می نمايد.
|
System.Web
، پس از
System مهمترين namespace در
کتابخانه کلاس فريمورک دات نت است .namespace فوق
، شامل نوع های متنوع بهمراه تعداد زيادی namespace
زير مجموعه است . امکانات موجود در namespace فوق ،
مسئوليت پياده سازی ASP.NET را برعهده دارند. دو
namespace زيرمجموعه مهم
System.Web ، شامل System.Web.UI ( شامل نوع هائی
بمنظور ايجاد برنامه های مبتنی بر مرورگرها ) و
System.Web.Services ( شامل نوع هائی برای ايجاد سرويس های وب )
است .
فراموش نکنيم
که : |
System.Web ، مسئول پياده سازی ASP.NET است .
|
System.Windows.Forms
، شامل نوع هائی بمنظور ايجاد رابط کاربر گرافيکی (GUI)
ويندوز است . رابط کاربر محلی برای پياده کنندگانی که رابط های مبتنی بر
مرورگر را طراحی می نمايند ، دارای اهميت کمتری بوده ولی دارای اهميت
خاص خود است .
فراموش نکنيم
که : |
System.Windows.Forms ،
امکانات حمايتی لازم در خصوص ايجاد رابط های کاربر گرافيکی محلی در ويندوز را فراهم
می نمايد.
|
System.XML
، شامل نوع هائی مفيدی برای انجام عمليات در ارتباط با اسناد XML است . دات نت بطور
کامل XML را حمايت و محتويات
namespace فوق ، امکانات گسترده ای رابمنظور کار با داده های مبتنی بر
XML در اختيار پياده کنندگان قرار می دهد .
فراموش نکنيم
که : |
System.XML
، شامل مجموعه ای گسترده از امکانات لازم بمنظور کار با داده XML
است .
|
در پايان لازم است به اين نکته اشاره
گردد که کدهای ارائه شده در يک کتابخانه استاندارد تا زمانيکه نسبت به آنها شناختی
پيدا نگردد ، غيرمفيد خواهند بود. بخاطر سپردن تمام کنابخانه کلاس فريمورک دات نت
ضرورتی نداشته ولی پياده کنندگانی که می بايست کد سازگار با
CLR بنويسند ، لازم است دارای يک شناخت مناسب از امکانات
موجود در کتابخانه باشند. برخی از namespace ها
دارای اهميت بيشتری نسبت به ساير namespace ها بوده و
قصد داريم در بخش های بعدی اين مجموعه مقالات به بررسی آنها بپردازيم .
فراموش نکنيم
که : |
هر پياده کننده نرم افزار در فريمورک
دات نت ، می بايست يک شناخت اوليه مناسب نسبت به کتابخانه کلاس داشته باشد.
|