دوره آموزشی پیشرفته (PHP)
دوره آموزشی PHP پیشرفته
مقدمه
اینﺩﻭﺭﻩ ﭘﻴﺸﺮﻓﺘﻪ ﭘﯽﺍﭺﭘﯽ، ﺍﺧﺘﺼﺎﺹ ﺑﻪ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﺩﺍﺭﺩ. ﺩﺭ ﺍﻳﻦ ﺩﻭﺭﻩ ﺗﻼﺵ ﺧﻮﺍﻫﻴﻢ ﮐﺮﺩ ﺩﺭ ﺍﺩﺍﻣﻪ ﺩﻭﺭﻩﻫﺎﯼ ﭘﻴﺸﻴﻦ، ﻳﻌﻨﯽ «ﭘﯽﺍﭺﭘﯽ ﻣﻘﺪﻣﺎﺗﯽ» ﻭ «ﭘﯽﺍﭺﭘﯽ ﻣﺘﻮﺳﻄﻪ»، ﺑﺎ ﺍﺗﮑﺎ ﺑﺮ آن چه ﮐﻪ ﻳﺎﺩ ﮔﺮﻓﺘﻴﻢ، ﻣﻔﺎﻫﻴﻢ ﭘﻴﺸﺮﻓﺘﻪ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺑﺎ ﭘﯽﺍﭺﭘﯽ (شیﮔﺮﺍﻳﯽ) ﺭﺍ ﺑﺮ ﺩﺍﺷﺘﻪﻫﺎﻳﻤﺎﻥ ﺑﻴﺎﻓﺰﺍﻳﻴﻢ. ﺩﺭ ﺩﻭﺭﻩﻫﺎﯼ ﻣﻘﺪﻣﺎﺗﯽ ﻭ ﻣﺘﻮﺳﻄﻪ، ﺗﻼﺵ ﺑﺮ ﺁﻥ ﺑﻮﺩ ﮐﻪ ﺑﺎ ﻣﻔﺎﻫﻴﻢ ﺍﺑﺘﺪﺍﻳﯽ ﻭ ﭘﺎﻳﻪﺍﯼ ﺍﻳﻦ ﺯﺑﺎﻥ ﺁﺷﻨﺎﻳﯽ ﺑﻴﺎﺑﻴﻢ. ﻣﺎ ﺍﺯ ﻗﺎﺑﻠﻴﺖﻫﺎﯼ ﺯﺑﺎﻥ SQL ﮔﻔﺘﻴﻢ ﻭ ﺩﺭ ﮐﺪ ﻧﻮﺷﺘﻪﻫﺎﻳﻤﺎﻥ ﺍﺯ ﺁﻥ ﺍﺳﺘﻔﺎﺩﻩ ﮐﺮﺩﻳﻢ.
ﺩﺭﺱ ﺍﻭﻝ- ﻣﻔﺎﻫﻴﻢ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ شی ﮔﺮﺍ
ﺑﺮﺍﯼ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﺩﺭ ﻫﺮ ﺯﺑﺎﻧﯽ ﺍﺑﺘﺪﺍ ﺑﺎﻳﺪ ﻣﻔﻬﻮﻡ ﺍﺻﻠﯽ شیﮔﺮﺍﻳﯽ ﺭﺍ ﺩﺭﮎ ﮐﺮﺩ. شیﮔﺮﺍﻳﯽ ﺍﺑﺰﺍﺭ ﻭ ﻳﺎ ﺧﺼﻮﺻﻴﺖ ﺧﺎﺹ ﻳﮏ ﺯﺑﺎﻥ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﻧﻴﺴﺖ، ﺑﻠﮑﻪ ﺷﻴﻮﻩ ﻧﻮﻳﻨﯽ ﺍﺳﺖ ﮐﻪ ﺩﺭ ﺁﻥ ﻣﯽﺗﻮﺍﻥ ﻗﻄﻌﻪ ﮐﺪﻫﺎﻳﯽ ﺭﺍ ﺍﻳﺠﺎﺩ ﻭ ﺩﺭ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﻣﺨﺘﻠﻒ ﻣﻮﺭﺩ ﺍﺳﺘﻔﺎﺩﻩ ﻗﺮﺍﺭﺩﺍﺩ. ﻧﺨﺴﺘﻴﻦ ﻣﻄﻠﺐ ﻣﻬﻢ ﺍﻳﻦ ﺍﺳﺖ ﮐﻪ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﻧﻪ ﺗﻨﻬﺎ ﺭﺍه کار ﺗﺎﺯﻩ ﺩﺭ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﻣﻌﺮﻓﯽ ﻣﯽﮐﻨﺪ ﺑﻠﮑﻪ ﺷﻴﻮﻩﺍﯼ ﻧﻮﻳﻦ ﺩﺭ ﻧﻮﻉ ﺩﻳﺪ ﻭ ﺗﻔﮑﺮ ﺩﺭ ﻣﻮﺭﺩ ﻣﺴﺎﻳﻞ ﻭ ﺭﺍﻩ ﺣﻞﻫﺎﯼ آن ها ﺍﺳﺖ. ﻣﺎ ﻣﯽﺩﺍﻧﻴﻢ ﮐﻪ ﺍﺻﻞ ﮐﺎﺭ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﻳﺎﻓﺘﻦ ﻳﮏ ﻣﺸﮑﻞ ﻳﺎ ﻣﺴﺌﻠﻪ ﻭ ﺗﻮﻟﻴﺪ ﺑﺮﻧﺎﻣﻪﺍﯼ ﺩﺭ ﺟﻬﺖ ﺭﻓﻊ ﻣﺸﮑﻞ ﻳﺎ ﺣﻞ ﻣﺴﺌﻠﻪ ﺍﺳﺖ. ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﻳﮏ ﺷﻴﻮﻩ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺍﺳﺖ ﮐﻪ ﺳﺎﺧﺘﺎﺭ ﺍﺻﻠﯽ ﺁﻥ شیﻫﺎ ﻳﺎ ﺍﺷﻴﺎ ﻫﺴﺘﻨﺪ. ﺯﺑﺎﻥﻫﺎﯼ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ، ﺯﺑﺎﻥﻫﺎﻳﯽ ﻫﺴﺘﻨﺪ ﮐﻪ ﺩﺭ ﺁﻥ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺲ ﻣﯽﺗﻮﺍﻧﺪ شیﻫﺎﯼ ﻣﺨﺘﻠﻔﯽ ﺭﺍ ﺗﻌﺮﻳﻒ ﮐﻨﺪ ﻭ ﺍﺯ ﺁﻥ شیﻫﺎﯼ ﺗﻮﻟﻴﺪ ﺷﺪﻩ ﺍﺳﺘﻔﺎﺩﻩ ﮐﻨﺪ. ﺍﻣﺮﻭﺯﻩ ﺍﮐﺜﺮ ﺯﺑﺎﻥﻫﺎﯼ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺍﺯ ﻓﻦﻫﺎﯼ شیﮔﺮﺍﻳﯽ ﭘﺸﺘﻴﺒﺎﻧﯽ ﻣﯽﮐﻨﻨﺪ. ﺯﺑﺎﻥﻫﺎﻳﯽ ﻣﺎﻧﻨﺪ ++C ﻭ ﭘﯽﺍﭺﭘﯽ ﺍﺯ ﺟﻤﻠﻪ ﺯﺑﺎﻥﻫﺎﯼ ﺭﻭﺍﻝ ﮔﻮﻧﻪﺍﯼ ﻫﺴﺘﻨﺪ ﮐﻪ ﺳﺎﺧﺘﺎﺭ ﺑﺮﻧﺎﻣﻪﻫﺎ ﺩﺭ ﺁﻥﻫﺎ ﺑﻠﻮﮎﻫﺎﻳﯽ ﺑﺎ ﻧﺎﻡ ﺭﻭﺍﻝ ﮔﻮﻧﻪ (Procedure) ﻳﺎ ﻫﻤﺎﻥ ﺗﺎﺑﻊﻣﻨﺪ ﺍﺳﺖ ﻭ ﺍﻣﺮﻭﺯﻩ ﺍﺯ ﻓﻨﻮﻥ شیﮔﺮﺍﻳﯽ ﻧﻴﺰ ﭘﺸﺘﺒﺎﻧﯽ ﻣﯽﮐﻨﻨﺪ. ﺩﺭ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﺭﻭﺍﻝﮔﻮﻧﻪ ﺯﻣﺎﻧﯽ ﮐﻪ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﺎﻥ، ﺩﺭ ﺣﺎﻝ ﺗﻮﺳﻌﻪ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﺑﺰﺭﮒ ﻭ ﮔﺴﺘﺮﺩﻩ ﺑﻮﺩﻧﺪ، ﺑﺎ ﻣﺸﮑﻼﺕ ﺯﻳﺎﺩﯼ ﻣﻮﺍﺟﻪ ﻣﯽﺷﺪﻧﺪ. ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﺣﺠﻢ ﺯﻳﺎﺩ ﮐﺪﻫﺎ، ﺗﻮﺳﻌﻪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﺷﺘﻪ ﺷﺪﻩ ﺳﺨﺖ ﺑﻮﺩ ﻭ ﺑﻨﺎﺑﺮﺍﻳﻦ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﺎﻥ ﺗﻼﺵ ﮐﺮﺩﻧﺪ ﮐﻪ ﺷﻴﻮﻩﺍﯼ ﺟﺪﻳﺪ ﺑﺮﺍﯼ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺑﻴﺎﺑﻨﺪ ﺗﺎ ﺑﺮﺍﯼ ﺗﻮﺳﻌﻪ ﺑﺮﻧﺎﻣﻪﻫﺎ ﻣﺸﮑﻞ ﻧﺪﺍﺷﺘﻪ ﺑﺎﺷﻨﺪ. ﺍﺯ ﺍﻳﻦ ﺭﻭ ﺑﻪ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﺭﻭﯼ ﺁﻭﺭﺩﻧﺪ. ﺩﺭ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ همان طور ﮐﻪ ﮔﻔﺘﻴﻢ ﻫﻤﻪ ﭼﻴﺰ ﺑﺮ ﺍﺳﺎﺱ شی ﺍﺳﺖ؛ ﻳﻌﻨﯽ ﻫﻤﻪ ﭼﻴﺰ ﺑﻪ ﺷﮑﻞ شی ﻣﺸﺨﺺ ﻣﯽﺷﻮﺩ. ﺩﺭ ﺍﻳﻦ ﺭﻭﺵ ﺍﺯ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﻧﮕﺎﻩ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺲ ﺑﻪ ﺳﻴﺴﺘﻢ ﻧﮕﺎﻩ ﮐﺴﯽ ﺍﺳﺖ ﮐﻪ ﺗﻼﺵ ﻣﯽﮐﻨﺪ ﺑﺎ ﭘﻴﺪﺍ ﮐﺮﺩﻥ شیﻫﺎﯼ ﻣﺨﺘﻠﻒ ﺩﺭ ﺳﻴﺴﺘﻢ ﻭ ﺑﺮﻗﺮﺍﺭﯼ ﺍﺭﺗﺒﺎﻁ ﺑﻴﻦ ﺁﻥﻫﺎ ﺳﻴﺴﺘﻢ ﻣﻮﺛﺮ ﻭ ﮐﺎﺭﺍﻳﯽ ﺗﻮﻟﻴﺪ ﮐﻨﺪ.
ﺩﺭ ﻫﺮ ﺩﻭ ﻧﻮﻉ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ (ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺭﻭﺍﻝﮔﻮﻧﻪ ﻭ شیﮔﺮﺍ) ﺑﺎﻳﺪ ﺑﻪ ﺩﻭ ﻣﻮﺭﺩ «ﻋﻤﻞ» ﻭ «ﺩﺍﺩﻩ» ﺩﻗﺖ ﮐﺮﺩ. ﺭﻭﺍﻝ ﮐﺎﺭ ﺑﻪ ﺍﻳﻦ ﺗﺮﺗﻴﺐ ﺍﺳﺖ ﮐﻪ ﮐﺎﺭﺑﺮ«ﺩﺍﺩﻩ» ﺭﺍ ﺍﺯ ﻃﺮﻳﻖ ﻓﺮﻡ ﺍﭺﺗﯽﺍﻡﺍﻝ ﺑﻪ ﺳﻴﺴﺘﻢ ﻣﯽﺩﻫﺪ ﻭ ﺑﺮﻧﺎﻣﻪ ﺁﻥ ﺩﺍﺩﻩﻫﺎ ﺭﺍ ﮔﺮﻓﺘﻪ «ﻋﻤﻞ» ﺭﻭﯼ آن ها ﺍﻧﺠﺎﻡ ﻣﯽﺩﻫﺪ ﻭ ﺩﺭ ﭘﺎﻳﮕﺎﻩ ﺩﺍﺩﻩﻫﺎ ﺫﺧﻴﺮﻩ ﻣﯽﮐﻨﺪ ﻭ ﻳﺎ این که ﺑﺮﺍﯼ ﺍﺳﺘﻔﺎﺩﻩ ﺩﺭ ﺁﻳﻨﺪﻩ ﺩﺭ ﭘﺎﻳﮕﺎﻩ ﺩﺍﺩﻩﻫﺎ ﺫﺧﻴﺮﻩ ﻣﯽﮐﻨﺪ. ﺍﻟﺒﺘﻪ ﺧﻮﺩ ﺫﺧﻴﺮﻩ ﺩﺭ ﭘﺎﻳﮕﺎﻩ ﻫﻢ ﻋﻤﻞ ﻣﺤﺴﻮﺏ ﻣﯽﺷﻮﺩ. ﺗﻔﺎﻭﺕ ﺍﻳﻦ ﺩﻭ ﻧﻮﻉ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺩﺭ ﺗﻤﺮﮐﺰ ﻣﺘﻔﺎﻭﺕ ﺍﻳﻦ ﺩﻭ ﺍﺳﺖ، ﭼﺮﺍﮐﻪ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ ﺭﻭﺍﻝ ﮔﻮﻧﻪ ﺑﺮ ﺭﻭﯼ «ﻋﻤﻞ» ﺗﻤﺮﮐﺰ ﺩﺍﺭﻧﺪ (ﺍﻳﻦ ﮐﺎﺭ ﺭﺍ ﺍﻧﺠﺎﻡ ﺑﺪﻩ ﻭ ﺑﻌﺪ ﺁﻥ ﮐﺎﺭ …) ﻭ ﺑﺮﻧﺎﻣﻪﻫﺎﯼ شیﮔﺮﺍ ﺑﺮ ﺭﻭﯼ ﺩﺍﺩﻩﻫﺎ ﻭ ﻧﻮﻉ آن ها.
ﺍﮔﺮ ﻣﻄﻠﺐ ﺑﺎﻻ ﺑﺮﺍﯼ ﺷﻤﺎ ﻭﺍﺿﺢ ﻧﻴﺴﺖ ﻧﮕﺮﺍﻥ ﻧﺒﺎﺷﻴﺪ ﺩﺭ ﻃﻮﻝ ﺩﻭﺭﻩ ﺑﺎ ﺷﺮﺡ ﻋﻤﻠﮑﺮﺩ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﺍﻳﻦ ﻣﻔﻬﻮﻡ ﺑﺮﺍﯼ ﺷﻤﺎ ﺭﻭﺷﻦ ﻣﯽﺷﻮﺩ. ﺍﺯ آن جا ﮐﻪ ﺍﻳﻦ ﺩﻭﺭﻩ ﺩﺭ ﻣﻮﺭﺩ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﺍﺳﺖ، ﺗﻤﺮﮐﺰ ﻣﺎ ﻫﻢ ﺑﺮ ﺍﻳﻦ ﻧﻮﻉ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺧﻮﺍﻫﺪ ﺑﻮﺩ. ﺷﺎﻳﺪ ﺑﺘﻮﺍﻥ ﮔﻔﺖ ﮐﻪ ﺩﻟﻴﻞ به وﺟﻮﺩ ﺁﻣﺪﻥ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﻣﺸﮑﻞ ﺑﺰﺭﮔﯽ ﺍﺳﺖ ﮐﻪ ﺩﺭ ﻧﻮﻉ ﺭﻭﺍﻝ ﮔﻮﻧﻪﺍﺵ ﺍﺳﺖ. ﻣﺸﮑﻼﺗﯽ ﻣﺎﻧﻨﺪ ﺗﮑﺮﺍﺭ ﮐﺪﻧﻮﻳﺴﯽ ﻭ ﻧﮕﻬﺪﺍﺭﯼ ﺍﺯ ﺁن ها ﺩﺭ ﺻﻮﺭﺕ ﭘﻴﺪﺍ ﺷﺪﻥ ﻋﻴﺐ ﺩﺭ ﺑﺮﻧﺎﻣﻪ ﻭ ﺍﻟﺒﺘﻪ ﺳﺨﺘﯽ ﮐﺎﺭ ﮔﺮﻭﻫﯽ ﺩﺭ ﺍﻳﻦ ﻧﻮﻉ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ. ﻫﻤﻴﺸﻪ ﻳﮑﯽ ﺍﺯ ﺑﺰﺭگ ترین ﺩﻏﺪﻏﻪﻫﺎﯼ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺲﻫﺎ ﻧﮕﻬﺪﺍﺭﯼ ﺍﺯ ﮐﺪﻫﺎﯼ ﻧﻮﺷﺘﻪ ﺷﺪﻩ ﺍﺳﺖ ﺑﻪ ﺍﻳﻦ ﻣﻌﻨﯽ ﮐﻪ ﺯﻣﺎﻧﯽ ﻻﺯﻡ ﺍﺳﺖ ﮐﻪ ﻳﮏ ﺳﺮﯼ ﺍﺯ ﮐﺎﺭﻫﺎ ﺑﺎﺭﻫﺎ ﻭ ﺑﺎﺭﻫﺎ ﺍﻧﺠﺎﻡ ﺷﻮﻧﺪ ﻭ ﺍﮔﺮ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺲ ﺑﺨﻮﺍﻫﺪ ﺗﻐﻴﻴﺮﯼ ﺩﺭ ﺭﻭﻧﺪ ﮐﺎﺭ ﺑﺮﻧﺎﻣﻪ ﺑﺪﻫﺪ ﺑﺮﺍﯼ ﻫﺮ ﺗﻐﻴﻴﺮﯼ ﮐﻪ ﻧﻴﺎﺯ ﺑﺎﺷﺪ ﺩﺭ ﮐﺪﻫﺎ ﺩﺍﺩﻩ ﺷﻮﺩ ﺑﺎﻳﺪ ﺗﻤﺎﻡ ﻗﺴﻤﺖﻫﺎﯼ ﺑﺮﻧﺎﻣﻪ ﺭﺍ ﺑﺮﺭﺳﯽ ﮐﻨﺪ ﻭ ﺗﻐﻴﻴﺮ ﺩﻫﺪ.
ﺩﺭ ﻧﮕﺎﻩ ﻧﺨﺴﺖ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﺑﻪ ﻣﺮﺍﺗﺐ ﺳﺨﺖﺗﺮ ﺍﺯ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﺭﻭﺍﻝ ﮔﻮﻧﻪ ﺑﻪ ﻧﻈﺮ ﻣﯽﺁﻳﺪ ﺍﻣﺎ ﭘﺲ ﺍﺯ ﻳﺎﺩﮔﻴﺮﯼ ﻭ ﺷﺮﻭﻉ ﮐﺎﺭ ﺑﺎ ﺁﻥ ﻣﺘﻮﺟﻪ ﺧﻮﺍﻫﻴﺪ ﺷﺪ ﮐﻪ ﺍﻳﻦ ﺩﺳﺖ ﺑﺮﻧﺎﻣﻪﻫﺎ ﭼﻪ ﺑﺮﺗﺮﯼﻫﺎﻳﯽ ﻧﺴﺒﺖ ﺑﻪ ﻧﻮﻉ ﺩﻳﮕﺮ ﺩﺍﺭﻧﺪ ﻭ ﺳﺎﺧﺘﺎﺭ ﻭ ﺳﺎﺯﻣﺎﻥ ﻣﺤﮑﻢﺗﺮ ﻭ ﺑﺎ ﻧﻈﻢﺗﺮﯼ ﺭﺍ ﺑﺮﺧﻮﺭﺩﺍﺭﻧﺪ. ﺍﻟﺒﺘﻪ ﺑﺎﻳﺪ ﺍﺿﺎﻓﻪ ﮐﺮﺩ ﺗﺼﻮﺭ این که ﺑﻌﺪ ﺍﺯ ﻳﺎﺩﮔﻴﺮﯼ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ شیﮔﺮﺍ ﺑﺎﻳﺪ ﻫﻤﻪ ﺑﺮﻧﺎﻣﻪﻫﺎ ﻭ ﺳﻴﺴﺘﻢﻫﺎﯼ ﺧﻮﺩ ﺭﺍ ﺑﺎ ﺁﻥ ﺑﺮﻧﺎﻣﻪﻧﻮﻳﺴﯽ ﮐﻨﻴﻢ ﻫﻢ ﺧﻄﺎﺳﺖ. ﭼﺮﺍﮐﻪ ﺩﺭ ﺑﻌﻀﯽ ﺑﺮﻧﺎﻣﻪﻫﺎ ﺗﺎﺛﻴﺮ ﻭ ﮐﺎﺭﺍﻳﯽ ﺭﻭﺵ ﺭﻭﺍﻝ ﮔﻮﻧﻪ ﺑﻴﺸﺘﺮ ﻭ ﺑﻬﺘﺮ ﺍﺯ شیﮔﺮﺍ ﺍﺳﺖ. ﺷﺎﻳﺪ ﺑﻬﺘﺮ ﺑﺎﺷﺪ ﺍﻳﻦ ﻃﻮﺭ ﺑﻴﺎﻥ ﮐﻨﻴﻢ ﮐﻪ ﺷﻴﻮﻩ شیﮔﺮﺍ ﺑﻴﺸﺘﺮ ﺑﺮﺍﯼ ﻧﺮﻡﺍﻓﺰﺍﺭﻫﺎﯼ ﺑﺰﺭﮒ ﻭ ﭘﻴﭽﻴﺪﻩ ﮐﺎﺭﺑﺮﺩ ﺩﺍﺭﺩ. ﭘﺲ ﺍﻳﻦ ﻳﮏ ﺭﺍﻩ ﺑﻬﺘﺮﯼ ﻧﻴﺴﺖ ﺑﻠﮑﻪ ﻳﮏ ﺭﺍﻩ ﺩﻳﮕﺮ ﺍﺳﺖ ﮐﻪ ﺍﺳﺘﻔﺎﺩﻩ ﺍﺯ ﺁﻥ ﺩﺭ ﺑﻌﻀﯽ ﻣﻮﺍﺭﺩ ﺑﻬﺘﺮ ﻭ ﺩﺭ ﺑﻌﻀﯽ ﺩﻳﮕﺮ ﺑﺪﺗﺮ ﺍﺳﺖ.
نقد و بررسیها
هیچ دیدگاهی برای این محصول نوشته نشده است.