PDA

View Full Version : مقاله: استریمها در جاوا - قسمت اول



manvaputra
یک شنبه 03 آذر 1387, 21:07 عصر
استریم ها در جاوا:

با سلام خدمت دوستان عزیز امیدوارم مقاله های قبلی (هر چند حرفه ای نبودند) مفید واقع شده باشند این چند وقته واقعا گرفتار بودم برای همین فرصتی برای ادامه دادن مقالات دست نمی داد الان که به لطف الهی مشغله ها کمتر شده سعی می کنم مانند قبل به نوشتن ادامه بدم. خوب در مقالات قبلی به مبحث برقراری ارتباط در شبکه پرداخته بودیم در آینده هم قراره با همین مبحث جلو بریم ولی در این نقطه قبل ار ادامه باید دید خوبی نسبت به مقوله استریم ها داشته باشیم.

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

استریم:
استریمها در جاوا نقش یک کانال ارتباطی را ایفا می کنند که در یک طرف فرستنده و در طرف دیگر گیرنده قرار دارد. استفاده از بسته java.io برای ایجاد ورودی /خروجی ها ، خواندن از فایل یا نوشتن به فایل و یا حتی برقرای ارتباط شبکه ای در برنامه نویسی سوکت همه مواردی هستند که در آنها از انواع استریم ها استفاده می شود.



http://www.freezpic.com/images/8hw8bcqhmwu5ps35glu.gif


در هنگام طراحی یک برنامه که نیاز به استفاده از استریم دارد باید در انتخاب نوع –صحیح- استریم دقت لازم را بکار برد. برای ارائه رابط بهتر ممکن است استریمهای مختلف زنجیر وار با یکدیگر همکاری کنند. به عنوان مثال چنانچه اطلاعاتی نیاز به پردازش خاصی داشته باشد دو استریم مختلف می توانند با پیوستن به هم این کار را انجام دهند. برای روشن تر شدن این مفهموم اینگونه در نظر بگیرید که قرار است داده ای متشکل از مجموعه ای بایت از طرفی ارسال شود ولی در سوی دیگر جواب بصورت مجموعه ای از کارکتر ارائه بشود. در واقع استریمهای مختلف برای ایجاد کارایی ها و قابلیت های بیشتر می توانند با هم هماهنگ شوند.



http://www.freezpic.com/images/1hchay00ltne5011miw4.gif



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



استریمهای ورودی و استریمهای خروجی یا input/output streams
نویسنده ها و خوانندهایا Readers/Writers


گروه اول کلاسهایی برای برقراری ارتباط در سطوح پایین بر اساس انتقال بایت می باشند، گروه دوم با اینکه از نظر عملکردی بسیار شبیه گروه اول می باشد در مورد سطح ارتباط با یکدیگر متفاوت می باشند چرا که گروه دوم ،بر خلاف گروه اول که با گروهی از بایت ها سرو کار دارد ارتباطشان از نوع کارکتری می باشد.

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


http://www.freezpic.com/images/99o4dgs5p50ijlkgvws1.gif

http://www.freezpic.com/images/d96jfks1nc94xyt1s6w.gif

http://www.freezpic.com/images/ygvnacmqsmwgpf8d0yt0.gif

http://www.freezpic.com/images/j3h7lpl2anji8rs8fm7.gif


ادامه دارد...... (http://barnamenevis.org/forum/showthread.php?p=646121#post646121)

manvaputra
دوشنبه 18 آذر 1387, 01:15 صبح
استریمها در جاوا قسمت دوم (http://barnamenevis.org/forum/showthread.php?p=646121#post646121)