PDA

View Full Version : سوال: نحوه کار با Component ها



zahra_m_alipoor
دوشنبه 31 خرداد 1389, 12:02 عصر
سلام دنبال یه مرجع خوب برا ی درک کامپوننتها میگردم تا بتونم باهاشون کار کنم.البته من کاملا مبتدی هستم
ممنون میشم کمکم کنید

r00tkit
دوشنبه 31 خرداد 1389, 13:11 عصر
سلام

اول که موضوع تاپیک رو دیدم فکر کردم در مورد Component Object Model (COM) هستش

منظور شما کدوم کامپونت ها هستش؟
components های خود .net

visual controls
یا
Non-visual components

برای هر دو MSDN

zahra_m_alipoor
دوشنبه 31 خرداد 1389, 17:56 عصر
اول ممنون که کمکم میکنید
بعدش باید بگم که من خودم دیروز تو کلاس انطور فهمیدم که کاپوننت ها اجزای سازنده یک چیزی هستد که خودشون از اجزای دیگری تشکیل شدها اند.
مثل کامپوننت قطار که که خودش از کابین های مختلف تشکیل شده است
و آنچه که روی ویندوز کار میکند commponent winows است که دو نوع است.
1) out of prosses
2) iprosses

zahra_m_alipoor
دوشنبه 31 خرداد 1389, 18:04 عصر
همچنین مطالب زیر هم از همین سایت پیدا کردم که از دوستان مختلف که تا حدودی کمکم کده ولی همچنان درک کامل و منسجمی ازش ندارم
ممنون میشه اگه کمکم کنید


کامپونت یعنی جز
هر چیزی که به صورت بسته بندی در اومده باشه و یک کار مشخصی رو انجام بده میتونه کامپونت باشه
لزوما همه کامپونت ها مربوط به ظاهر برنامه نیستند


به نظر من کامپوننت سورس کدهای نوشته شده در محیط هایی است که فناوری COM را پشتیبانی میکنند . هدف از نوشتن کامپوننت فقط زیبا سازی نیست بلکه هدف این است که کار برنامه نویسان را ساده کند و برنامه نویس روی اصل برنامه تمرکز نمایند و از طرفی برنامه نویسانی که هنوز در ابتدای راه هستند (مثل خود بنده) نیز بتوانند از امکانات تعبیه شده در کامپوننت استفاده کنند به عنوان مثال کامپوننت WIndows Media Player
محیط هایی که COM مایکروسافت را پشتیبانی میکنند مانند
1- VC++‎2-
2-Dot Net
3- Delphi
در مورد اینکه کامپوننت تا چه اندازه در دنیای برنامه نویسی پابرجا خواهد ماند اختلاف نظر وجود دارد برخی آن را یک راه حل خوب برای تعبیه ابزارهای قدرتمند در برنامه می دانند و بعضی انرا تاریخ مصرف گذشته می دانند

نمونه هایی از کامپوننت هایی که من استفاده کردم را می توانید در لینک زیر ببینید که در محیط ++C نوشته شده است (Arc Object)
http://barnamenevis.org/forum/showthread.php?t=204889 (http://barnamenevis.org/forum/showthread.php?t=204889)

صرفاً فقط برای فناوری COM نیستش یا شاید بهتر باشه که بگیم در محیط ویژوآل میتونه در فایلهای دیگه مانند DLL و EXE مورده استفاده قرار بگیره

دلیل استفاده از کامپوننت ها فقط زیبا سازی و کمک به برنامه نویس نیستش بلکه برای تولید نرم افزار هم به کار میره شما فرض کنید که میخواهید ساعت عقربه دار بنویسید


كامپوننت يك جزء نرم افزاريه كه قابليت استفاده مجدد (Reusable) داره. يكي از مهمترين اهدافشم به اشتراك گذاري كد در سطح باينريه.
روش كد نويسي مبتني بر اجزاء (Component Based) فرايند تست واحدو (Unit Test) تسهيل ميكنه، به اين معني كه شما مي تونيد هر جزء نرم افزاريتون رو مستقل از اجزاي ديگه توسعه بدين و تست كنيد و بعد با كنار هم قرار دادن اين اجزاء سيستم نهايي تون را بسازيد.
هر چي شما نرمافزارتون رو به اجزاي قابل تفكيك كوچكتري بشكونيد انعطاف برنامتون بيشتر مي شه و در نتيجه نگهداريش ساده تر مي شه.
وقتي شما مبتني بر اجزا كدنويسي مي كنيد عيب يابي نرم افزارتون با سرعت و دقت بيشتري صورت مي گيره، از طرفي براي اينكه يك قطعه رو تغيير بديد نيازي نيست كل برنامتون رو مجددا كامپايل كنيد.
شما براي اينكه بتونيد از قطعات توسعه داده شده توسط ديگران استفاده كنيد و يا اينكه كامپوننت هاي خودتونو در اختيار اونا قرا بديد لازمه كه كامپوننت هاي مزبور از استاندارهاي مشخصي پيروي كنن. COM يكي از اين استانداردها يا پروتوكل هاست، خود دات نت، فريم ورك لازم براي به اشتراك گذاري اسمبلي ها رو فراهم مي كنه، تو جاوا هم شما مي تونيد از اپلت هاي آماده استفاده كنيد.
در نهايت بايد گفت كامپوننت يك قطعه اجرايي (DLL, OCX, EXE) با استاندارد هاي مشخصه كه سرويس هايي رو در اختيار قرا ميده و ميشه از اون تو نرم افزارهاي مختلف استفاده كرد.

r00tkit
دوشنبه 31 خرداد 1389, 18:25 عصر
سلام



iprosses
in-Process Components


به نظر من کامپوننت سورس کدهای نوشته شده در محیط هایی است که فناوری COM راپشتیبانی میکنند
خیر



صرفاً فقط برایفناوری COM نیستش یا شاید بهتر باشه کهبگیم در محیط ویژوآل میتونه در فایلهای دیگه مانند DLL و EXE مورده استفاده قراربگیره
اشتباه

برای درک مفهوم کامپونت این مقاله رو بخونید

http://en.wikipedia.org/wiki/Software_component#Software_component


اینم برای مفهوم کامپونت در .net
http://msdn.microsoft.com/en-us/library/ms973807.aspx

اینم یه کتاب
http://oreilly.com/catalog/9780596102074

zahra_m_alipoor
دوشنبه 31 خرداد 1389, 23:51 عصر
صرفاً فقط برایفناوری COM نیستش یا شاید بهتر باشه کهبگیم در محیط ویژوآل میتونه در فایلهای دیگه مانند DLL و EXE مورده استفاده قراربگیره


چرا میگید این جمله غلط

r00tkit
دوشنبه 31 خرداد 1389, 23:59 عصر
یه بار دیگه جمله رو دقیق تر بگید ! تا بگم کجاش غلط هستش

zahra_m_alipoor
سه شنبه 01 تیر 1389, 00:10 صبح
صرفاً فقط برایفناوری COM نیستش یا شاید بهتر باشه کهبگیم در محیط ویژوآل میتونه در فایلهای دیگه مانند DLL و EXE مورده استفاده قراربگیره

شما این نقل قول من رو گذاشتید و زیرش نوشتید اشتباه
چرا؟

r00tkit
سه شنبه 01 تیر 1389, 00:24 صبح
رجوع کنید به پست شمارهی 7

zahra_m_alipoor
سه شنبه 01 تیر 1389, 00:28 صبح
ممنون از کمکتون و منابعی که معرفی کردید . میشه خواهش کنم که یه منبع فارسی بهم معرفی کنید.
ممنون

r00tkit
سه شنبه 01 تیر 1389, 01:09 صبح
sorry منبع فارسی نمیشناسم اگه خواستید بعد امتحانام(شما هم دانشجو هستید؟) براتون ترجمه می کنم این لینک ها رو

zahra_m_alipoor
سه شنبه 01 تیر 1389, 20:31 عصر
نیاز به منبع فارسی برای مطالعه componnent ها

mammad_kami
چهارشنبه 02 تیر 1389, 11:33 صبح
سلام
این کتاب خوبیه من خودم خیلی ازش استفاده کردم:
http://www.softgozar.com/WebPage/Download.aspx?SoftwareId=54&Title=Learn-Visual-Csharp-Farsi

zahra_m_alipoor
چهارشنبه 02 تیر 1389, 14:45 عصر
این کتابی که معرفی کردید بعد از dow کردید password mikhad تا فایلش باز شده
چه کنم؟

csharpdoost
چهارشنبه 02 تیر 1389, 15:09 عصر
این کتابی که معرفی کردید بعد از dow کردید password mikhad تا فایلش باز شده
چه کنم؟

سلام
همونجا خودش پسورد رو هم گذاشته:
پسوردش اینه:www.softgozar.com