SlideShare a Scribd company logo
1 of 48
Download to read offline
‫ﺑﻨﺎم ﻳﮕﺎﻧﻪ ﺧﺎﻟﻖ هﺴﺘﯽ ﺑﺨﺶ‬
                                                                   ‫ﻓﺼﻞ اول –‬
                                                             ‫ﺁﺷﻨﺎﻳﯽ ﺑﺎ ‪Activex‬‬
‫ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬ﻳﮑﯽ از ﻗﻮﻳﺘﺮﻳﻦ اﺑﺰارهﺎﻳﻴﺴﺖ ﮐﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن وﻳﻨﺪوز در‬
‫اﺧﺘﻴﺎر دارﻥﺪ . ﺗﻘﺮﻳﺒﺎ هﺮ ﺑﺮﻥﺎﻣﻪ ای ﮐﻪ ﺑﻨﻮﻳﺴﻨﺪ از ‪ Activex‬اﺱﺘﻔﺎدﻩ ﺧﻮاهﻨﺪ ﮐﺮد . در‬
                                      ‫اﻳﻦ ﻓﺼﻞ ﺑﺎ ﺱﺮ ﻓﺼﻞ ذﻳﻞ ﺁﺷﻨﺎ ﺧﻮاهﻴﻢ ﺷﺪ :‬
                                                 ‫- اهﻤﻴﺖ ﻣﺪول هﺎی ﻥﺮم اﻓﺰاری‬
                                             ‫- ﺗﺎرﻳﺨﭽﻪ و اﺹﻄﻼﺣﺎت ‪Activex‬‬
                                          ‫- درک ﻣﻔﻬﻮم ﺟﺎوا و ﮐﻨﺘﺮل ‪Activex‬‬
                            ‫- ﻣﻄﺎﻟﺒﯽ درﺑﺎرﻩ اﻣﻨﻴﺖ و ﺗﻮزﻳﻊ ﮐﻨﺘﺮل هﺎی ‪Activex‬‬
                                                 ‫اﻧﻘﻼب ﻣﺪول هﺎی ﻧﺮم اﻓﺰاری :‬
‫هﻤﺎﻥﻨﺪ هﺮ ﺹﻨﻌﺖ دﻳﮕﺮی ، ﮐﺎرﺁﻳﯽ ﻳﮑﯽ از دﻏﺪﻏﻪ هﺎی اﺹﻠﯽ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن اﺱﺖ و‬
‫ﻳﮑﯽ از ﺟﻨﺒﻪ هﺎی ﻣﻬﻢ ﮐﺎرﺁﻳﯽ اﺟﺘﻨﺎب از دوﺑﺎرﻩ ﮐﺎری اﺱﺖ . اﮔﺮ ﮐﺪی ﻥﻮﺷﺘﻪ اﻳﺪ ﮐﻪ‬
         ‫ﮐﺎر ﺧﺎﺹﯽ را اﻥﺠﺎم ﻣﯽ دهﺪ ، چﺮا ﺑﺎﻳﺪ دﻓﻌﻪ ﺑﻌﺪ هﻤﺎن ﮐﺪ را دوﺑﺎرﻩ ﺑﻨﻮﻳﺴﻴﺪ ؟‬
‫اوﻟﻴﻦ ﮔﺎم در راﻩ اﺱﺘﻔﺎدﻩ ﻣﺠﺪد از ﮐﺪهﺎ ، ﻣﻔﻬﻮم زﻳﺮ ﻣﺠﻤﻮﻋﻪ ﻳﺎ روال ‪Procedure‬‬
‫اﺱﺖ . ﮐﺪی را ﻳﮑﺒﺎر ﻣﯽ ﻥﻮﻳﺴﻴﺪ و از ﺁن ﺑﻪ ﺑﻌﺪ در هﺮ ﺟﺎی ﺑﺮﻥﺎﻣﻪ ﮐﻪ ﻻزم ﺑﻮد ﻓﻘﻂ‬
‫ﮐﺎﻓﯽ اﺱﺖ ﺁﻥﺮا اﺣﻀﺎر ‪ Call‬ﮐﻨﻴﺪ . ﻗﺮار دادن روال هﺎی ﮐﻠﯽ در ﻳﮏ ﻣﺪول ﺑﺮﻥﺎﻣﻪ‬
‫ﻥﻮﻳﺴﯽ ﻗﺪﻣﯽ ﺑﻪ ﭘﻴﺶ ﺑﻮد . ﺑﺎ اﻳﻦ ﺗﻤﻬﻴﺪ ﻣﯽ ﺗﻮان از ﺁن روال هﺎ در ﺑﺮﻥﺎﻣﻪ هﺎی ﻣﺨﺘﻠﻒ‬
                                                                       ‫اﺱﺘﻔﺎدﻩ ﮐﺮد .‬
                                                         ‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺷﯽ ﮔﺮا :‬
‫ﺑﻪ ﻣﻮازات رﺷﺪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﺪوﻻر ، ﺗﮑﻨﻮﻟﻮژی دﻳﮕﺮی در زﻣﻴﻨﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ‬
                                                     ‫اﺧﺘﺮاع ﺷﺪ و ﺗﻮﺱﻌﻪ ﻳﺎﻓﺖ .‬
                                               ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ﮔﺮا ﻳﺎ ‪OOP‬‬
‫) ‪ (Object – Oriented Programming‬ﻣﺤﺮک ﺗﻮﺱﻌﻪ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی رﺷﺪ و‬
‫ﭘﻴﭽﻴﺪﮔﯽ روز اﻓﺰون ﺑﺮﻥﺎﻣﻪ هﺎ و ﻣﺸﮑﻼﺗﯽ ﺑﻮد ﮐﻪ ﺑﻪ ﺗﻴﻎ ﺁن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن را درﮔﻴﺮ‬
‫ﺧﻮد ﮐﺮدﻩ ﺑﻮد . ﻣﻬﻤﺘﺮﻳﻦ ﻣﻨﺒﻊ اﻳﻦ ﻣﺸﮑﻼت ﺑﺮ هﻢ ﮐﻨﺶ ﻏﻴﺮ ﻗﺎﺑﻞ ﭘﻴﺶ ﺑﻴﻨﯽ ﻗﺴﻤﺘﻬﺎی‬
‫ﻣﺨﺘﻠﻒ ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﺑﺎ ﻳﮑﺪﻳﮕﺮ ﺑﻮد . چﻮن اﻳﻦ ﻗﺴﻤﺘﻬﺎ ﻣﺎﻥﻨﺪ داﻥﻪ هﺎی ﻳﮏ زﻥﺠﻴﺮ در هﻢ‬
 ‫ﺑﺎﻓﺘﻪ ﺷﺪﻩ ﺑﻮﻥﺪ و هﺮ ﺗﻐﻴﻴﺮی در ﻳﮏ ﻗﺴﻤﺖ ﺑﻪ راﺣﺘﯽ ﺱﺎﻳﺮ ﻗﺴﻤﺘﻬﺎ را ﻣﺘﺎﺛﺮ ﻣﯽ ﮐﺮد .‬
‫را ﻩ ﺣﻞ اﻳﻦ ﻣﺸﮑﻞ ﺁن ﺑﻮد ﮐﻪ هﺮ ﻗﺴﻤﺖ ﺑﺮﻥﺎﻣﻪ در ﻳﮏ ﺑﺴﺘﻪ ﺑﻨﺎم ﺷﯽ ‪، Object‬‬
‫ﮐﭙﺴﻮﻟﻪ ﻳﺎ ‪ Encapsulation‬ﺷﻮد . ﺱﺎز و ﮐﺎر دروﻥﯽ هﺮ ﺷﯽ ﻣﻄﻠﻘﺎ از دﻳﺪ دﻥﻴﺎی‬
‫ﺧﺎرج ﻣﺨﻔﯽ اﺱﺖ و ﺁﻥﻬﺎ ﻥﻤﯽ ﺗﻮاﻥﻨﺪ ﺗﺎﺛﻴﺮی ﺑﺮ ﻋﻤﻠﮑﺮد وی ﺑﮕﺬارﻥﺪ . اﻟﺒﺘﻪ ﻳﮏ ﺷﯽ‬
‫ﻥﻤﯽ ﺗﻮاﻥﺪ ﺑﮑﻠﯽ از دﻥﻴﺎی اﻃﺮاف ﺧﻮد اﻳﺰوﻟﻪ ﺷﻮد چﻮن ﺑﺪﻳﻦ ﺗﺮﺗﻴﺐ دﻳﮕﺮ چﻴﺰ ﺑﯽ‬
‫ﻓﺎﻳﺪﻩ ای ﺑﻴﺶ ﻥﺨﻮاهﺪ ﺑﻮد ! ﺑﻪ هﻤﻴﻦ دﻟﻴﻞ ﺑﺮای ارﺗﺒﺎط ﺑﺎ دﻳﮕﺮ ﻗﺴﻤﺘﻬﺎی ﺑﺮﻥﺎﻣﻪ ، هﺮ‬



‫1‬
‫ﺷﯽ از وﺱﻴﻠﻪ ای ﺑﻨﺎم واﺱﻂ ﻳﺎ ‪ Interface‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﺪ . واﺱﻂ هﺮ ﺷﯽ دو ﺑﺨﺶ‬
                            ‫دارد : ﺧﻮاص ) دادﻩ هﺎ ( و ﻣﺘﺪهﺎ ) ﮐﺪهﺎ ( ی ﺁن .‬
                                              ‫ﺕﺎرﻳﺨﭽﻪ ﮐﻮﺕﺎهﯽ از ‪: Axtivex‬‬
‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﺪوﻻر ﺱﺎﻟﻬﺎ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن را ﺑﻪ ﺧﻮد ﻣﺸﻐﻮل ﮐﺮدﻩ ﺑﻮد و در واﻗﻊ‬
‫ﻳﮑﯽ از ﻣﺤﺮﮐﻬﺎی اﺹﻠﯽ ﺗﻮﺱﻌﻪ ﺱﻴﺴﺘﻢ ﻋﺎﻣﻞ وﻳﻨﺪوز هﻢ هﻤﻴﻦ اﻳﺪﻩ ﮐﺪهﺎی ﻗﺎﺑﻞ‬
‫اﺷﺘﺮاک و ﻗﺎﺑﻞ اﺱﺘﻔﺎدﻩ ﻣﺠﺪد ﺑﻮدﻩ اﺱﺖ . اوﻟﻴﻦ ﮔﺎم در راﻩ ﭘﻴﺎدﻩ ﺱﺎزی ﻋﻨﺎﺹﺮ ﻣﺪوﻻر‬
‫ﺗﮑﻨﻮﻟﻮژی ‪ OLE‬ﻳﺎ ‪ Object Linking and Embedding‬ﺑﻮد . هﺪف اوﻟﻴﻪ ‪OLE‬‬
‫اﻳﺠﺎد ﺱﻨﺪهﺎی ﻣﺮﮐﺐ ‪ Compound Documents‬ﺑﺎ اﺱﺘﻔﺎدﻩ از ﺑﺮﻥﺎﻣﻪ هﺎی ﻣﺨﺘﻠﻒ‬
                                                                            ‫ﺑﻮد .‬
‫ﺱﻨﺪی ﮐﻪ ﻣﻘﺪاری ﻣﺘﻦ و ﻣﻘﺪاری ﻥﻤﻮدار دارد ، و هﺮ ﮐﺪام ﺁﻥﻬﺎ ﺑﺎ ﻥﺮم اﻓﺰار ﺧﺎص ﺧﻮد‬
‫اﻳﺠﺎد ﺷﺪﻩ اﻥﺪ ، ﻥﻤﻮﻥﻪ ای از ﻳﮏ ﺱﻨﺪ ﻣﺮﮐﺐ اﺱﺖ . وﻗﺘﯽ ﺑﺎ ﻣﺘﻦ ﮐﺎر ﻣﯽ ﮐﻨﻴﺪ ﻥﺮم‬
‫اﻓﺰارهﺎ واژﻩ ﭘﺮداز ﮐﻨﺘﺮل را ﺑﺪﺱﺖ ﻣﯽ ﮔﻴﺮد و وﻗﺘﯽ ﺑﺎ ﻥﻤﻮدارهﺎ ﮐﺎر ﻣﯽ ﮐﻨﻴﺪ ﻥﺮم‬
‫اﻓﺰار ﺗﺮﺱﻴﻤﯽ ﻣﺴﺌﻮﻟﻴﺖ را ﺑﻪ ﻋﻬﺪﻩ ﻣﯽ ﮔﻴﺮد . ‪ OLE‬ﺑﺎ وﺟﻮد ﮐﻨﺪی و ﻣﺸﮑﻼت دﻳﮕﺮ‬
                                                        ‫ﻣﺴﻠﻤﺎ ﻗﺪﻣﯽ ﺑﻪ ﭘﻴﺶ ﺑﻮد .‬
                                                                          ‫ً‬
‫ﺗﮑﻨﻮﻟﻮژی ‪ OLE‬ﺧﻮد ﺑﺮ ﻳﮏ اﺱﺘﺎﻥﺪارد ﮐﻠﯽ ﺗﺮ ﺑﻨﺎم ‪ COM‬ﻳﺎ ‪Component‬‬
‫‪ Object Model‬اﺱﺘﻮار اﺱﺖ . ﺑﺰودی ‪ COM‬از ﺱﻨﺪهﺎی ﻣﺮﮐﺐ ﻓﺮاﺗﺮ رﻓﺖ و‬
‫‪ OLE‬را هﻢ ﺑﺪﻥﺒﺎل ﺧﻮد ﮐﺸﺎﻥﺪ و از ﺁن ﺑﻪ ﺑﻌﺪ ‪ OLE‬اﺹﻄﻼﺣﯽ ﺷﺪ ﺑﺮای هﺮ چﻴﺰی‬
‫ﮐﻪ از ﺗﮑﻨﻮﻟﻮژی ‪ COM‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﺮد . ﺱﺎﻟﻬﺎ ﺑﻌﺪ ﮐﻪ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺑﻄﻮر ﺟﺪی‬
‫درﮔﻴﺮ اﻳﻨﺘﺮﻥﺖ ﺷﺪ ، اﺹﻄﻼح ‪ Activex‬هﻢ وارد ادﺑﻴﺎت ﮐﺎﻣﭙﻴﻮﺗﺮی ﺷﺪ . اﺑﺘﺪا اﻳﻦ‬
‫اﺹﻄﻼح ﻓﻘﻂ در راﺑﻄﻪ ﺑﺎ اﻳﻨﺘﺮﻥﺖ و وب ﺑﻮد اﻣﺎ اوﺽﺎع ﺑﺪﻳﻦ ﻣﻨﻮال ﺑﺎﻗﯽ ﻥﻤﺎﻥﺪ و‬
‫اﮐﻨﻮن ‪ Activex‬ﺑﻪ ﺁن ﺑﺨﺶ از ﺗﮑﻨﻮﻟﻮژﻳﻬﺎی ‪ COM‬ﮔﻔﺘﻪ ﻣﯽ ﺷﻮد ﮐﻪ در ﺁﻥﻬﺎ ﻳﮏ‬
‫ﻗﻄﻌﻪ ﻥﺮم اﻓﺰاری اﻣﮑﺎﻥﺎت ﺧﻮد را در اﺧﺘﻴﺎر ﺑﺮﻥﺎﻣﻪ هﺎی دﻳﮕﺮ ﻣﯽ ﮔﺬارد . ﻳﮑﯽ از‬
‫ادﻋﺎهﺎی ‪ ) Activex‬ﮐﻪ ﺑﻮﻳﮋﻩ ﺑﻪ اﻳﻨﺘﺮﻥﺖ ﻣﺮﺑﻮط ﻣﯽ ﺷﻮد ( ﭘﺸﺘﻴﺒﺎﻥﯽ از ﻥﺮم‬
‫اﻓﺰارهﺎی ﺗﻮزﻳﻊ ﺷﺪﻩ ‪ Distributed‬اﺱﺖ ، و اﻳﻦ ﻳﻌﻨﯽ ، ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺑﻪ‬
‫ﺷﻤﺎ ﺱﺮوﻳﺲ ﺧﻮاهﻨﺪ داد ، ﺣﺘﯽ اﮔﺮ در ﮐﺎﻣﭙﻴﻮﺗﺮی دﻳﮕﺮ ) و هﺰاران ﮐﻴﻠﻮﻣﺘﺮ‬
‫دورﺗﺮ ( ﺑﺎﺷﻨﺪ . اﻣﺎ چﻪ ﺑﺮ ﺱﺮ ‪ OLE‬ﺁﻣﺪ ؟ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی دوﺑﺎرﻩ ﺑﻪ وﺽﻌﻴﺖ اوﻟﻴﻪ‬
                         ‫اش ﺑﺮﮔﺸﺖ و اﮐﻨﻮن ﻓﻘﻂ ﺑﺎ ﺱﻨﺪهﺎی ﻣﺮﮐﺐ ﺱﺮوﮐﺎر دارد .‬
                                               ‫ﻧﻘﺎط ﺿﻌﻒ و ﻗﻮت ‪: Activex‬‬
‫ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬ﺑﻬﺘﺮﻳﻦ وﺱﻴﻠﻪ ﺑﺮای اﻳﺠﺎد ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل در وب اﺱﺖ . اﻟﺒﺘﻪ‬
‫ﺑﺮﺧﯽ ﺑﺎ اﻳﻦ ﻋﻘﻴﺪﻩ ﻣﺨﺎﻟﻔﻨﺪ و ﺑﺎﻳﺪ ﮔﻔﺖ ﮐﻪ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی ﻣﺴﻠﻤﺎ ﺗﻨﻬﺎ اﺑﺰار ﻣﺤﺘﻮﻳﺎت‬
‫ﻓﻌﺎل وب ﻥﻴﺴﺖ . ﭘﺲ اﺟﺎزﻩ دهﻴﺪ ﻥﮕﺎهﯽ ﺑﻪ ﺟﻨﺒﻪ هﺎی ﻣﺜﺒﺖ و ﻣﻨﻔﯽ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی‬
                                                                     ‫ﺑﻴﻨﺪازﻳﻢ .‬




‫2‬
‫ﻧﻘﺎط ﻗﻮت :‬
‫ﻳﮑﯽ از ﻣﻬﻤﺘﺮﻳﻦ ﻥﻘﺎط ﻗﻮت ‪ Activex‬ﻗﺪرت ﺁن اﺱﺖ . ﻳﮏ ﮐﻨﺘﺮل ‪ Activex‬ﺗﻘﺮﻳﺒﺎ از‬
   ‫ً‬
‫ﻋﻬﺪﻩ هﺮ ﮐﺎری ﮐﻪ ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻣﻌﻤﻮﻟﯽ ﺑﺘﻮاﻥﺪ اﻥﺠﺎم دهﺪ ، ﺑﺮﻣﯽ ﺁﻳﺪ . از دﻳﺪﮔﺎﻩ ﻳﮏ‬
‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺲ وب اﻳﻦ ﺑﻬﺘﺮﻳﻦ ﺟﻨﺒﻪ ﻳﮏ اﺑﺰار ﺧﻠﻖ ﻣﺤﺘﻮﻳﺎت دﻳﻨﺎﻣﻴﮏ اﺱﺖ . دﻳﮕﺮ‬
‫اﺑﺰارهﺎی ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ، ﻣﺎﻥﻨﺪ ﺟﺎوا و ‪ ، CGI‬در اﻳﻦ زﻣﻴﻨﻪ ﺑﺴﻴﺎر ﻣﺤﺪودﺗﺮ از‬
‫‪ Activex‬هﺴﺘﻨﺪ . ﻥﮑﺘﻪ ﻣﺜﺒﺖ دﻳﮕﺮ ، ﺣﺪاﻗﻞ ﺑﺮای ﺑﺴﻴﺎری از اﻓﺮاد ، اﻣﮑﺎن اﺱﺘﻔﺎدﻩ‬
                ‫از ﻣﻬﺎرﺗﻬﺎی ﻋﺎدی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ در ﺧﻠﻖ ﮐﻨﺘﺮل هﺎی ‪ Activex‬اﺱﺖ .‬
‫روش اﻥﺠﺎم ﺑﺎرﮔﻴﺮی هﺎی وب هﻢ ﻳﮑﯽ از ﻣﺰاﻳﺎی ‪ Activex‬اﺱﺖ . وﻗﺘﯽ ﺑﻪ ﻳﮏ‬
           ‫ﺹﻔﺤﻪ وب ﮐﻪ ﻋﻨﺎﺹﺮ ‪ Activex‬دارد ﻣﯽ روﻳﺪ ، وﻗﺎﻳﻊ ذﻳﻞ اﺗﻔﺎق ﻣﯽ اﻓﺘﺪ :‬
          ‫١- اﻃﻼﻋﺎت ﻣﺨﺘﺼﺮی درﺑﺎرﻩ ﮐﻨﺘﺮل و ﺷﻤﺎرﻩ وﻳﺮاﻳﺶ ﺁن ﺑﺎر ﻣﯽ ﺷﻮد .‬
‫٢- ﮐﺎوﺷﮕﺮ ﺑﺮرﺱﯽ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﺁﻳﺎ اﻳﻦ ﻥﺮم اﻓﺰار در ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻥﺼﺐ ﺷﺪﻩ ﻳﺎ‬
                                                                      ‫ﺧﻴﺮ .‬
‫٣- اﮔﺮ اﻳﻦ ﻥﺮم اﻓﺰار در ﺱﻴﺴﺘﻢ ﺷﻤﺎ وﺟﻮد ﻥﺪاﺷﺖ ) ﻳﺎ اﻳﻨﮑﻪ وﻳﺮاﻳﺶ ﺁن ﻗﺪﻳﻤﯽ ﺗﺮ‬
              ‫ﺑﻮد ( ، ﮐﺎوﺷﮕﺮ ﺁﻥﺮا ﺑﺎر ﮐﺮدﻩ و ﺱﭙﺲ ﻥﺼﺐ و اﺟﺮا ﺧﻮاهﺪ ﮐﺮد .‬
‫۴- اﮔﺮ ﻥﺮم اﻓﺰار در ﺱﻴﺴﺘﻢ ﺷﻤﺎ وﺟﻮد داﺷﺖ ، ﮐﺎوﺷﮕﺮ ﺁﻥﺮا از هﻤﺎن ﺟﺎ اﺟﺮا‬
‫ﺧﻮاهﺪ ﮐﺮد . ﺣﺘﻤﺎ ﻣﺘﻮﺟﻪ ﻣﺰﻳﺖ اﻳﻦ روش ﺷﺪﻩ اﻳﺪ : هﺮ ﻗﻄﻌﻪ ﻥﺮم اﻓﺰاری ﻓﻘﻂ‬
‫ﻳﮑﺒﺎر ﺑﺎﻳﺪ ﺑﺎر ﺷﻮد و دﻓﻌﺎت ﺑﻌﺪ دﻳﮕﺮ ﻥﻴﺎزی ﺑﻪ ﺑﺎر ﺷﺪن ﺁن ﻥﺨﻮاهﺪ ﺑﻮد ،‬
‫ﺑﻨﺎﺑﺮاﻳﻦ ﺹﺮﻓﻪ ﺟﻮﻳﯽ زﻳﺎدی در زﻣﺎن ﻥﻤﺎﻳﺶ ﺁن ﺹﻔﺤﻪ وب ﺧﻮاهﺪ ﺷﺪ . در‬
‫اﺑﺰارهﺎﻳﯽ ﻣﺎﻥﻨﺪ ﺟﺎوا ، اﻳﻦ ﻗﺒﻴﻞ ﻥﺮم اﻓﺰارهﺎ ﺑﺎﻳﺪ هﺮ دﻓﻌﻪ ﻣﺠﺪدا ﺑﺎر ﺷﻮﻥﺪ و‬
                                ‫اﻳﻦ اﺟﺮای ﺁﻥﻬﺎ را ﺑﻪ ﻣﺮاﺗﺐ ﮐﻨﺪﺗﺮ ﺧﻮاهﺪ ﮐﺮد .‬
                                         ‫ﻧﻘﺎط ﺿﻌﻒ – هﻴﭻ چﻴﺰ ﮐﺎﻣﻞ ﻧﻴﺴﺖ !‬
‫ﺷﺎﻳﺪ ﻣﻬﻤﺘﺮﻳﻦ ﺟﻨﺒﻪ ﻣﻨﻔﯽ ‪ Activex‬ﺽﻌﻒ اﻣﻨﻴﺘﯽ ﺁن ﺑﺎﺷﺪ . اﻳﻦ ﺽﻌﻒ ﻇﺎهﺮا ﻳﮑﯽ از‬
‫ﺗﺒﻌﺎت اﺟﺘﻨﺎب ﻥﺎﭘﺬﻳﺮ ﻗﺪرت و اﻥﻌﻄﺎف ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬اﺱﺖ . ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺲ‬
‫ﺷﺮور ﻣﯽ ﺗﻮاﻥﺪ ﺑﺮاﺣﺘﯽ ﺑﺎ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی ﻥﺮم اﻓﺰاری ﺑﺴﺎزد ﮐﻪ ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ دﻳﮕﺮان‬
‫ﺹﺪﻣﻪ ﺑﺰﻥﺪ . ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ اﻳﻦ وﺽﻌﻴﺖ ، ﺁﻳﺎ ﻣﯽ ﺗﻮان هﻨﮕﺎم ﺑﺮﺧﻮرد ﺑﺎ ﮐﻨﺘﺮل هﺎی‬
‫‪ Activex‬روی اﻳﻨﺘﺮﻥﺖ اﺣﺴﺎس راﺣﺘﯽ ﮐﺮد ؟ ﭘﺎﺱﺦ اﻳﻦ ﺱﺌﻮال ﻣﺜﺒﺖ اﺱﺖ و در اداﻣﻪ‬
‫ﺗﻮﺽﻴﺢ ﺧﻮاهﻴﻢ داد ﮐﻪ چﮕﻮﻥﻪ ﻣﻴﮑﺮوﺱﺎﻓﺖ اﻗﺪاﻣﺎت اﻣﻨﻴﺘﯽ ﺧﺎص را ﺑﺮای اﻳﻦ‬
‫ﺗﮑﻨﻮﻟﻮژی ﭘﻴﺎدﻩ ﺱﺎزی ﮐﺮدﻩ اﺱﺖ . ﺑﺎ اﻳﻦ وﺟﻮد هﻤﻮارﻩ اﻳﻦ ﻣﻄﻠﺐ را در ﻥﻈﺮ داﺷﺘﻪ‬
                                   ‫ﺑﺎﺷﻴﺪ ﮐﻪ هﻴﭻ ﺱﺪ اﻣﻨﻴﺘﯽ ذاﺗﺎ ﻥﻔﻮذ ﻥﺎﭘﺬﻳﺮ ﻥﻴﺴﺖ .‬
                                                      ‫ً‬
‫ﻳﮑﯽ دﻳﮕﺮ از ﻥﻘﺎط ﺽﻌﻒ ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬ﺁن اﺱﺖ ﮐﻪ ﻓﻘﻂ ﺑﺮﺧﯽ از‬
‫ﮐﺎوﺷﮕﺮهﺎی اﻣﺮوزی از ﺁن ﭘﺸﺘﻴﺒﺎﻥﯽ ﻣﯽ ﮐﻨﻨﺪ . اﮔﺮ در ﻳﮏ ﺹﻔﺤﻪ وب ﻥﺮم اﻓﺰارهﺎی‬
‫‪ Activex‬وﺟﻮد داﺷﺘﻪ ﺑﺎﺷﺪ و ﻓﺮدی ﺑﺎ ﻳﮏ ﮐﺎوﺷﮕﺮ ﮐﻪ از ‪ Activex‬ﭘﺸﺘﻴﺒﺎﻥﯽ ﻥﻤﯽ‬
‫ﮐﻨﺪ اﻳﻦ ﺹﻔﺤﻪ را ﺑﺎز ﮐﻨﺪ ﻗﺎدر ﺑﻪ اﺱﺘﻔﺎدﻩ از ﻣﺰاﻳﺎی ﺁن ﻥﺨﻮاهﺪ ﺑﻮد . ﺧﻮﺷﺒﺨﺘﺎﻥﻪ اﻳﻦ‬
‫ﻣﺸﮑﻞ ﺁﻥﭽﻨﺎن ﮐﻪ ﺑﻪ ﻥﻈﺮ ﻣﯽ ﺁﻳﺪ ﺣﺎد ﻥﻴﺴﺖ ، چﻮن دو ﺗﺎ از ﻣﻬﻤﺘﺮﻳﻦ ﮐﺎوﺷﮕﺮهﺎی وب‬


‫3‬
‫)‪ (Netscape Navigator , Internet Explorer‬از اﻳﻦ ﺗﮑﻨﻮﻟﻮژی ﭘﺸﺘﻴﺒﺎﻥﯽ ﻣﯽ‬
‫ﮐﻨﻨﺪ ) اوﻟﯽ ﻣﺴﺘﻘﻴﻢ و دوﻣﯽ از ﻃﺮﻳﻖ ﻳﮏ اﻓﺰودﻥﯽ ﻗﺎﺑﻞ ﻥﺼﺐ ( ﺑﻪ هﺮ ﺣﺎل ، وﻗﺘﯽ ﺑﺎ‬
‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﻳﻨﺘﺮﻥﺖ ﺱﺮوﮐﺎر دارﻳﻢ ، اﻳﻦ ﻣﺸﮑﻞ اﺱﺎﺱﺎ وﺟﻮد ﻥﺪارد چﻮن اﻳﻦ ﻣﺎ‬
                       ‫ً‬
                                                ‫هﺴﺘﻴﻢ ﮐﻪ ﺷﺒﮑﻪ را ﮐﻨﺘﺮل ﻣﯽ ﮐﻨﻴﻢ .‬
‫ﻣﺸﮑﻞ دﻳﮕﺮ رﻓﺘﺎر ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺁن اﺱﺖ ﮐﻪ ﺗﻤﺎم ﺁﻥﻬﺎ روی ﺱﻴﺴﺘﻢ ﺷﻤﺎ ﺟﺎ‬
‫ﺧﻮش ﮐﺮدﻩ و ﻓﻀﺎی هﺎرددﻳﺴﮏ را اﺷﻐﺎل ﺧﻮاهﻨﺪ ﮐﺮد . اﻣﺎ ﺑﻨﻈﺮ ﻣﻦ ﻥﮕﺮاﻥﯽ در اﻳﻦ‬
‫ﻣﻮرد هﻢ ﺑﻴﻬﻮدﻩ اﺱﺖ چﻮن ﻋﻨﺎﺹﺮ ‪ Activex‬ﻣﻌﻤﻮﻻ ﮐﻮچﮑﻨﺪ و چﻨﺪ ﻣﮕﺎﺑﺎﻳﺖ ﺟﺎﻳﯽ‬
‫ﮐﻪ اﺣﺘﻤﺎﻻ ) ﺹﺪهﺎ ﮐﻨﺘﺮل ‪ ( Activex‬اﺷﻐﺎل ﺧﻮاهﻨﺪ ﮐﺮد در هﺎرد دﻳﺴﮏ هﺎی ﺑﺴﻴﺎر‬
                                     ‫ﺑﺰرگ اﻣﺮوزی ﻥﻤﯽ ﺗﻮاﻥﻨﺪ ﻣﺸﮑﻠﯽ اﻳﺠﺎد ﮐﻨﺪ .‬
                                                  ‫وﺿﻌﻴﺖ ﺟﺎوا چﮕﻮﻧﻪ اﺱﺖ ؟‬
         ‫ﺟﺎوا ﻳﮑﯽ دﻳﮕﺮ از ﺗﮑﻨﻮﻟﻮژﻳﻬﺎی ﻋﻤﺪﻩ اﻳﺠﺎد ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل در اﻳﻨﺘﺮﻥﺖ اﺱﺖ .‬
‫اﭘﻠﺖ هﺎی ﺟﺎوا ، ﮐﻪ ﺗﻮﺱﻂ ﮐﺎوﺷﮕﺮ ﺑﺎر و اﺟﺮا ﻣﯽ ﺷﻮﻥﺪ ، دارای ﺑﺴﻴﺎری از ﻗﺎﺑﻠﻴﺖ‬
‫هﺎی ‪ Activex‬هﺴﺘﻨﺪ ، اﭘﻠﺖ هﺎی ﺟﺎوا ﺑﺮای ﺟﻠﻮﮔﻴﺮی از اﻗﺪاﻣﺎت ﺧﺮاﺑﮑﺎراﻥﻪ ، ﻓﺎﻗﺪ‬
‫ﺗﻮاﻥﺎﻳﯽ هﺎی ﺧﺎص ) از ﻗﺒﻴﻞ دﺱﺘﺮﺱﯽ ﺑﻪ ﺱﻴﺴﺘﻢ ﻓﺎﻳﻞ ‪ Systemfile‬هﺴﺘﻨﺪ و اﻳﻦ ﺁﻥﻬﺎ‬
‫را ﺑﺴﻴﺎر ﻣﺤﺪود ﮐﺮدﻩ اﺱﺖ . از ﻥﻈﺮ ﺗﺌﻮری ، اﭘﻠﺖ هﺎی ﺟﺎوا اﻳﻤﻦ هﺴﺘﻨﺪ چﻮن اﺱﺎﺱﺎ‬
‫ً‬
                                         ‫ﻥﻤﯽ ﺗﻮاﻥﻨﺪ ﮐﺎرهﺎی ﺧﻄﺮﻥﺎک اﻥﺠﺎم دهﻨﺪ !‬
                                  ‫درک ﻣﻔﻬﻮم ﺟﺎوا و ﮐﻨﺘﺮل هﺎی ‪: Activex‬‬
‫ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ اﺱﺖ ﮐﻪ ﺗﻮﺱﻂ ﺷﺮﮐﺖ ‪ Sun‬ﺑﻪ ﺑﺎزار ﻋﺮﺽﻪ‬
‫ﺷﺪﻩ اﺱﺖ ﺗﺎ ﺑﻪ وﺱﻴﻠﻪ ﺁن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن ﻗﺎدر ﺑﺎﺷﻨﺪ ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ را ﺑﺮای ﻣﺮورﮔﺮهﺎی‬
‫وب ﺑﻨﻮﻳﺴﻨﺪ ﮐﻪ ﮐﺎر ﺑﺎ ﺁﻥﻬﺎ ﺑﺮای اﺱﺘﻔﺎدﻩ ﮐﻨﻨﺪﮔﺎن ﺑﺴﻴﺎر راﺣﺖ ﺑﺎﺷﺪ اﺑﺰارهﺎی اﺱﺘﺎﻥﺪارد‬
‫ﺷﺒﮑﻪ وب ﺑﻪ ﻓﻌﺎﻟﻴﺖ هﺎ و ﻋﻤﻠﮑﺮدهﺎﻳﯽ ﮐﻪ از ﺹﻔﺤﻪ وب ﻗﺎﺑﻞ دﺱﺘﺮﺱﯽ هﺴﺘﻨﺪ ﻣﺤﺪود‬
‫ﻣﯽ ﺷﻮﻥﺪ . ﺑﺎ ﻳﮏ ﻥﺮم اﻓﺰار ﮐﺎﻣﻞ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﺎﻥﻨﺪ ﺟﺎوا ﻣﺤﺪودﻳﺖ هﺎی ﮐﻤﯽ ﺑﺮای‬
‫ﻃﺮاﺣﯽ ﻋﻤﻠﮑﺮدهﺎی دورن ﻳﮏ ﺹﻔﺤﻪ وب وﺟﻮد دارد . ﺑﻌﻨﻮان ﻣﺜﺎل ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ‬
‫ﺑﺎ ﻣﺮاﺟﻌﻪ ﺑﻪ ﺱﺎﻳﺖ اﻳﻨﺘﺮﻥﺘﯽ ‪ www.java.sun.com‬ﺑﺎ ﺑﺮﺧﯽ از ﻥﻤﻮﻥﻪ هﺎی ﮐﺎری‬
                                        ‫ﺟﺎوا ﺁﺷﻨﺎ ﺷﻮﻳﺪ . ﺑﻪ ﺷﮑﻞ زﻳﺮ ﺗﻮﺟﻪ ﮐﻨﻴﺪ :‬




                            ‫• وﺱﺎﻳﻞ ﺑﺎﻻ و ﭘﺎﻳﻴﻦ ﺑﺮﻥﺪﻩ ﺹﻔﺤﻪ ﺑﻪ هﻤﺮاﻩ ﺹﺪا‬
                   ‫• ﻃﺮاﺣﯽ ﺗﺼﺎوﻳﺮ ﺱﻪ ﺑﻌﺪی از اﺷﻴﺎء ﻣﺨﺘﻠﻒ ﻥﻈﻴﺮ ﻣﻮﻟﮑﻮل‬
              ‫• ﻥﺸﺎﻥﮕﺮهﺎی اﻋﻼن ﻳﮏ ﻣﻄﻠﺐ ﮐﻪ ﺑﻄﻮر ﺧﻮدﮐﺎر ﻋﻮض ﻣﯽ ﺷﻮد‬

‫4‬
‫ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا را ﺑﺎ ﻥﺎم ‪ Applet‬ﻥﺎﻣﮕﺬاری ﮐﺮدﻩ اﻥﺪ . ‪ Applet‬ﺟﺎوا ﺗﻮﺱﻂ ﺹﻔﺤﺎت‬
‫وب ﺑﺮ روی ﻳﮏ ﺱﺮوﻳﺲ دهﻨﺪﻩ وب ﻥﮕﻬﺪاری ﻣﯽ ﺷﻮد . وﻗﺘﯽ ﮐﻪ ﺷﻤﺎ ﻳﮏ ﺹﻔﺤﻪ‬
‫وب را ﮐﻪ دارای ﻗﺴﻤﺖ هﺎﻳﯽ اﺱﺖ ﮐﻪ ﺑﻮﺱﻴﻠﻪ ﺟﺎوا ﺑﺮﻥﺎﻣﻪ رﻳﺰی ﺷﺪﻩ ﻥﮕﺎﻩ ﻣﯽ ﮐﻨﻴﺪ‬
‫ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا ﺑﺼﻮرت ﺧﻮدﮐﺎر در هﻨﮕﺎم دﻳﺪن ﺁن ﺹﻔﺤﻪ وب از روی اﻳﻨﺘﺮﻥﺖ‬
‫ﮔﺮﻓﺘﻪ و ﺑﺮ روی ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻗﺮار ﻣﯽ ﮔﻴﺮﻥﺪ . ﺑﺮای اﻥﺠﺎم اﻳﻦ ﮐﺎر ، اﺣﺘﻴﺎﺟﯽ ﻥﻴﺴﺖ‬
                                                           ‫ﺷﻤﺎ ﮐﺎری اﻥﺠﺎم دهﻴﺪ .‬
‫ﻥﺮم اﻓﺰار ‪ IE‬ﺧﻮد ﻣﯽ داﻥﺪ ﮐﻪ چﮕﻮﻥﻪ ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا را اﺟﺮا ﮐﻨﺪ . ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﺟﺎوا‬
            ‫ﺑﻪ هﻤﺎن ﺱﺮﻋﺖ ﮐﻪ ﺑﻪ دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﯽ رﺱﺪ ﺑﺮ روی ﺁن ﻥﻴﺰ اﺟﺮا ﻣﯽ ﺷﻮد .‬
‫ﺑﺮای اﻳﻨﮑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺧﻮد را ﺑﺼﻮرت ﻣﻄﻤﺌﻦ ﻥﮕﻬﺪاری ﮐﻨﻴﺪ ﻥﺮم اﻓﺰار ‪ IE‬ﻣﺪﻟﯽ از‬
‫اﻣﻨﻴﺖ ﺟﺎوا را ﺑﻪ ﺷﻤﺎ اراﺉﻪ ﻣﯽ ﮐﻨﺪ ﮐﻪ در ﺁن اﺟﺎزﻩ اﺟﺮای ﮐﻠﻴﻪ اﭘﻠﺖ هﺎی ﺟﺎوا دادﻩ‬
‫ﺷﺪﻩ اﺱﺖ . ﺑﺪون اﻳﻨﮑﻪ در ﻣﻮرد ﺁﺱﻴﺐ دﻳﺪن ﺑﺮﻥﺎﻣﻪ هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮ ﺗﺎن ﻳﺎ ﻥﻔﻮذ ﺑﻪ‬
‫اﻃﻼﻋﺎت ﺷﺨﺼﯽ ﺧﻮدﺗﺎن ﮐﻪ ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﻮﺟﻮد اﺱﺖ ﻥﮕﺮان ﺑﺎﺷﻴﺪ .‬
‫‪ Javascript‬ﺱﺎدﻩ ﺗﺮﻳﻦ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ اﺱﺖ ﮐﻪ ﺑﺮای ﻃﺮاﺣﯽ اﺟﺰاء‬
                                                  ‫ﺹﻔﺤﻪ وب ﺷﻤﺎ ﺑﮑﺎر ﻣﯽ رود .‬
‫‪ Javascript‬ﺑﻮﺱﻴﻠﻪ ﺷﺮﮐﺖ ‪ Netscape‬ﺑﻪ ﺑﺎزار ﻋﺮﺽﻪ ﺷﺪﻩ اﺱﺖ . ﺑﺮﺧﻼف ﺟﺎوا‬
‫اﻳﻦ ﻥﺮم اﻓﺰار ﻥﻤﯽ ﺗﻮاﻥﺪ ﺑﺮای ﻥﻮﺷﺘﻦ ﺑﺮﻥﺎﻣﻪ هﺎ ﻳﺎ ‪ Applet‬ﺑﮑﺎر رود . ‪Javascript‬‬
‫ﻓﻘﻂ ﺑﺮای اﻋﻤﺎل ﺱﺎدﻩ ﻥﻈﻴﺮ روﺷﻦ ﮐﺮدن ﻳﮏ ﮐﻠﻤﻪ وﻗﺘﯽ ﮐﻪ ﺷﻤﺎ ﺑﺎ ﻣﺎوس ﺑﺮ روی ﺁن‬
‫ﻣﯽ روﻳﺪ و ﻳﺎ ﺗﻐﻴﻴﺮ ﺷﮑﻞ ﻳﮏ ﻥﺸﺎﻥﻪ ﺑﻪ ﺷﮑﻠﯽ ﮐﻪ ﺷﻤﺎ ﺗﺼﻮر ﮐﻨﻴﺪ ﺁن را ﻓﺸﺎر دادﻩ اﻳﺪ‬
                                                                   ‫ﺑﮑﺎر ﻣﯽ رود .‬
‫‪ Internet Explorer‬ﻗﺎدر اﺱﺖ ﮐﻪ ‪ Javascript‬را اﺟﺮا ﮐﻨﺪ و ﺹﻔﺤﺎﺗﯽ را ﮐﻪ در‬
‫ﺁﻥﻬﺎ از اﺟﺰاﻳﯽ اﺱﺘﻔﺎدﻩ ﺷﺪﻩ ﮐﻪ ﺑﻮﺱﻴﻠﻪ ‪ Javascript‬ﺑﺮای هﻤﮕﺎن ﻗﺎﺑﻞ اﺱﺘﻔﺎدﻩ ﺷﺪﻩ اﺱﺖ‬
‫ﻣﻤﮑﻦ اﺱﺖ در ﻥﻮﺷﺘﻦ ﺁﻥﻬﺎ ﻣﺸﮑﻼﺗﯽ ﭘﻴﺶ ﺁﻳﺪ و در ﻥﺘﻴﺠﻪ اﻣﮑﺎن دارد ﺷﻤﺎ در هﻨﮕﺎم‬
‫دﻳﺪن ﺹﻔﺤﺎت وب ﺑﺎ اﺷﮑﺎﻻﺗﯽ در راﺑﻄﻪ ﺑﺎ دﺱﺘﻮرات ‪ Javascript‬ﻣﻮاﺟﻪ ﺷﻮﻳﺪ و‬
           ‫ﻋﻤﻠﮑﺮدهﺎی ‪ Javascript‬ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺑﻪ ﺷﮑﻞ درﺱﺘﯽ اﺟﺮا ﻥﺸﻮد .‬
‫ﺷﺮﮐﺖ ‪ Microsoft‬دوﺱﺖ دارد ﮐﻪ ‪ Activex‬را ﻳﮏ ﻣﺠﻤﻮﻋﻪ از اﻣﮑﺎﻥﺎت ﺟﺪﻳﺪ‬
‫ﺑﺮای ﺱﺎﺧﺘﻦ ﺹﻔﺤﺎت وب ﻓﻌﺎﻟﺘﺮ ﻣﻌﺮﻓﯽ ﮐﻨﺪ ﺑﺮ ﺧﻼف ﺟﺎوا ‪Microsoft Activex‬‬
‫ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻥﻴﺴﺖ ﺑﻠﮑﻪ ﻳﮏ ﻣﺠﻤﻮﻋﻪ از ﻗﻄﻌﺎت ﻥﺮم اﻓﺰاری اﺱﺖ ﮐﻪ‬
‫ﺗﻮﺱﻂ دﻳﮕﺮ ﻥﺮم اﻓﺰارهﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻥﻈﻴﺮ ﺟﺎوا ﻣﯽ ﺗﻮاﻥﺪ اﺱﺘﻔﺎدﻩ ﺷﻮد . ‪Activex‬‬
‫ﻣﺎﻥﻨﺪ ‪ add-ons‬و ‪ Plug – ins‬ﻗﺎﺑﻠﻴﺖ ﻥﺮم اﻓﺰار ‪ IE‬را ﮔﺴﺘﺮش دادﻩ اﺱﺖ . هﻤﭽﻨﻴﻦ‬
‫‪ Activex‬ﻗﺎﺑﻠﻴﺖ هﺎی ﻥﺮم اﻓﺰار ﺟﺎوا را ﻥﻴﺰ ﺑﻬﺒﻮد ﺑﺨﺸﻴﺪﻩ اﺱﺖ . ﺑﺮﻥﺎﻣﻪ هﺎی‬
‫‪ Activex‬ﮐﻨﺘﺮل ﻥﺎﻣﻴﺪﻩ ﻣﯽ ﺷﻮﻥﺪ . ﻣﺎﻥﻨﺪ اﭘﻠﺖ هﺎی ﺟﺎوا ، ﮐﻨﺘﺮل هﺎ از روی اﻳﻨﺘﺮﻥﺖ‬
‫ﮔﺮﻓﺘﻪ ﻣﯽ ﺷﻮﻥﺪ و ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ اﺟﺮا ﻣﯽ ﮔﺮدد اﻳﻦ ﻋﻤﻞ هﻨﮕﺎﻣﯽ ﺹﻮرت ﻣﯽ‬
‫ﮔﻴﺮد ﮐﻪ ﺷﻤﺎ ﺹﻔﺤﺎت وﺑﯽ را ﻣﺸﺎهﺪﻩ ﻣﯽ ﮐﻨﻴﺪ ﮐﻪ دارای ﮐﻨﺘﺮل هﺎی ‪ Activex‬هﺴﺘﻨﺪ‬
‫در ﮔﻮﺷﻪ ﭘﺎﻳﻴﻦ ﺱﻤﺖ چﭗ ﭘﻨﺠﺮﻩ ‪ IE‬ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺟﻤﻠﻪ ) ﻥﺼﺐ ﻗﻄﻌﺎت ﻥﺮم‬


‫5‬
‫اﻓﺰاری ( وﻗﺘﯽ ﮐﻪ ﮐﻨﺘﺮﻟﻬﺎی ‪ Activex‬در ﺣﺎل اﻥﺘﻘﺎل ﺑﻪ دﺱﺘﮕﺎﻩ ﺷﻤﺎ هﺴﺘﻨﺪ را ﻣﺸﺎهﺪﻩ‬
                                                                           ‫ﻣﯽ ﮐﻨﻴﺪ .‬
‫ﻣﻮاﻗﻌﯽ ﻣﻤﮑﻦ اﺱﺖ ﺷﻤﺎ ﺑﺎ ﭘﻨﺠﺮﻩ هﺎﻳﯽ در ﺹﻔﺤﻪ ﻣﺎﻥﻴﺘﻮر ﮐﺎﻣﭙﻴﻮﺗﺮﺗﺎن ﻣﻮاﺟﻪ ﺷﻮﻳﺪ ﮐﻪ‬
‫ﺑﻮﺱﻴﻠﻪ ﺁﻥﻬﺎ از ﺷﻤﺎ ﺱﺌﻮال ﻣﯽ ﺷﻮد ﮐﻪ ﺁﻳﺎ ﻣﯽ ﺧﻮاهﻴﺪ ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺑﻪ دﺱﺘﮕﺎﻩ‬
‫ﺷﻤﺎ ﻣﻨﺘﻘﻞ ﺷﻮﻥﺪ ﻳﺎ ﻥﻪ ؟ ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬در ﺣﻘﻴﻘﺖ ﻗﺴﻤﺘﯽ از ﻣﺪﻟﻬﺎی ‪COM‬‬
‫) ‪ com‬ﻣﺨﻔﻒ ﻣﺪﻟﻬﺎی ﺷﯽ ء ﮔﺮای ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﻣﯽ ﺑﺎﺷﺪ (‬
                                                              ‫ﻣﻴﮑﺮوﺱﺎﻓﺖ ﻣﯽ ﺑﺎﺷﺪ .‬
‫اﻳﻦ ﻣﺪل ﺑﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن اﺟﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ ﻥﺮم اﻓﺰارهﺎﻳﯽ ﺑﺼﻮرت ﻣﺴﺘﻘﻞ ﺑﺮای‬
‫ﺹﻔﺤﺎت اﻳﻨﺘﺮﻥﺖ ﺧﻮد اﻳﺠﺎد ﮐﻨﻨﺪ و ﻳﺎ ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ را ﻃﺮاﺣﯽ ﮐﻨﻨﺪ ﮐﻪ ﻋﻤﻠﻴﺎت ﺧﺎﺹﯽ‬
‫را اﻥﺠﺎم دهﺪ . وﻗﺘﯽ ﮐﻪ اﻳﻦ ﺑﺮﻥﺎﻣﻪ هﺎ ﻥﻮﺷﺘﻪ و ﻃﺮاﺣﯽ ﻣﯽ ﺷﻮﻥﺪ ﻣﯽ ﺗﻮان از ﺁﻥﻬﺎ در‬
‫ﺟﺎهﺎی دﻳﮕﺮ هﻢ دوﺑﺎرﻩ اﺱﺘﻔﺎدﻩ ﮐﺮد . در ﻗﺴﻤﺖ ﭘﺎﻳﻴﻦ ﺗﻌﺪادی از ﮐﻨﺘﺮل هﺎی ‪Activex‬‬
                                    ‫ﮐﻪ در داﺧﻞ ‪ IE‬ﺑﮑﺎر ﻣﯽ روﻥﺪ ﺁوردﻩ ﺷﺪﻩ اﺱﺖ :‬
                                           ‫• ﻥﻤﺎﻳﺸﮕﺮ ﻓﺎﻳﻞ هﺎی ‪Power Point‬‬
                           ‫• راﺑﻄﻪ هﺎﻳﯽ ﺑﺮای ﺑﮑﺎرﮔﻴﺮی ﺑﺎﻥﮏ هﺎی اﻃﻼﻋﺎﺗﯽ‬
                                                       ‫• ﺱﺎﻋﺖ هﺎی ﺑﻴﻦ اﻟﻤﻠﻠﯽ‬
                                        ‫• ﻥﻘﺸﻪ راﻩ هﺎ ﮐﻪ ﮐﺎر ﺑﺎ ﺁﻥﻬﺎ ﺱﺎدﻩ اﺱﺖ .‬
‫ﻳﮑﯽ از ﺑﺰرﮔﺘﺮﻳﻦ اﻣﺘﻴﺎزات ﺟﺎوا و ‪ Activex‬ﮐﻪ در ‪ add – ons ، Plug – ins‬و‬
‫ﻥﻤﺎﻳﺸﮕﺮ هﺎ وﺟﻮد ﻥﺪارد اﻳﻦ اﺱﺖ ﮐﻪ ﺁﻥﻬﺎ ﺑﺼﻮرت ﺧﻮدﮐﺎر ﮐﺎر ﻣﯽ ﮐﻨﻨﺪ و ﺷﻤﺎ‬
‫اﺣﺘﻴﺎﺟﯽ ﻥﺪارﻳﺪ ﮐﻪ ﺑﻪ ﭘﺎﻳﮕﺎﻩ هﺎی اﻳﻨﺘﺮﻥﺖ ﻣﺮاﺟﻌﻪ ﮐﺮدﻩ و ﺁﻥﻬﺎ را ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺧﻮد‬
‫ﻣﻨﺘﻘﻞ ﮐﻨﻴﺪ و ﻣﺪﺗﯽ وﻗﺖ ﺹﺮف ﮐﻨﻴﺪ ﺗﺎ ﻓﺮم هﺎی ﺛﺒﺖ ﻥﺎم ﺷﻤﺎ را ﭘﺮ ﻥﻤﺎﻳﻴﺪ . ﭘﺲ از‬
‫اﻥﺘﻘﺎل ﺁﻥﻬﺎ ﺑﻪ دﺱﺘﮕﺎﻩ ﻣﺪﺗﯽ را ﺑﺮای ﻥﺼﺐ ﺁﻥﻬﺎ وﻗﺖ ﺹﺮف ﮐﻨﻴﺪ . از زﻣﺎﻥﯽ ﮐﻪ ﻥﺮم‬
‫اﻓﺰار ‪ IE‬ﺗﻮاﻥﺴﺖ اﭘﻠﺖ هﺎی ﺟﺎوا ‪ Java Applet‬و ﮐﻨﺘﺮل هﺎی ‪ Activex‬را اﺟﺮا ﮐﻨﺪ‬
‫ﮐﺎرﺑﺮان اﻳﻨﺘﺮﻥﺖ دﻳﮕﺮ اﺣﺘﻴﺎﺟﯽ ﻥﺪارﻥﺪ ﮐﻪ ﺑﻪ ﭘﺎﻳﮕﺎهﻬﺎی ﺧﺎص ﺑﺮای ﮔﺮﻓﺘﻦ اﻃﻼﻋﺎت‬
‫ﻣﺮاﺟﻌﻪ ﮐﻨﻨﺪ ﺑﻠﮑﻪ اﭘﻠﺖ هﺎ و ﮐﻨﺘﺮل هﺎ ﺑﻪ هﻤﺎن ﺱﺮﻋﺖ ﮐﻪ ﺑﻪ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﺘﺼﻞ‬
        ‫ی ﺷﻮﻥﺪ در هﻤﺎن ﻓﺎﺹﻠﻪ ﻥﻴﺰ ﺑﻪ اﺟﺮا در ﺧﻮاهﻨﺪ ﺁﻣﺪ . ﭘﺎﻳﮕﺎﻩ اﻳﻨﺘﺮﻥﺖ ﻣﺮﺑﻮط ﺑﻪ‬




                                                                ‫اﻃﻼﻋﺎت ‪Activex‬‬




‫6‬
‫ﺑﺮای دﺱﺘﺮﺱﯽ ﺑﻪ اﻳﻦ ﺱﺎﻳﺖ ﻣﯽ ﺗﻮاﻥﻴﺪ از ﺁدرس زﻳﺮ اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ :‬
‫‪http://www.developer.com‬‬
                                          ‫ﺑﮑﺎر ﺑﺮدن ﮐﻨﺘﺮل هﺎی ‪: Activex‬‬

‫ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺹﻔﺤﺎت اﻳﻨﺘﺮﻥﺘﯽ ﺷﻤﺎ را ﺑﺼﻮرت زﻥﺪﻩ در ﻣﯽ ﺁورﻥﺪ ﺑﻄﻮرﻳﮑﻪ‬
‫ﺷﻤﺎ ﻗﺎدر ﺧﻮاهﻴﺪ ﺑﻮد ﻓﺎﻳﻞ هﺎی ﺹﻮﺗﯽ زﻥﺪﻩ را اﺟﺮا ﮐﺮدﻩ و ﻳﺎ ﻥﺸﺎﻥﮕﺮهﺎی ﻣﺘﻐﻴﻴﺮ را‬
                                           ‫ﺑﺒﻴﻨﻴﺪ و ﺑﺴﻴﺎری ﮐﺎرهﺎی ﻣﺸﺎﺑﻪ دﻳﮕﺮ .‬




‫١- ﺑﻪ ﻳﮏ ﺹﻔﺤﻪ وب ﮐﻪ دارای ﮐﻨﺘﺮل ‪ Activex‬اﺱﺖ ﻣﺘﺼﻞ ﺷﻮﻳﺪ . ﺑﻪ ﻋﻨﻮان‬
               ‫ﻣﺜﺎل ﺑﻪ ﺁدرس ﻓﻮق ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ : ‪http://carpoint.msn.com‬‬
          ‫٢- ﮔﺰﻳﻨﻪ ﻣﺮﺑﻮط ﺑﻪ اﺟﺮای ﻳﮏ ﻓﺎﻳﻞ ﺹﻮﺗﯽ ﻳﺎ ﺗﺼﻮﻳﺮی را ﮐﻠﻴﻠﮏ ﮐﻨﻴﺪ .‬
‫٣- در ﺹﻮرت ﻥﻴﺎز ﮔﺰﻳﻨﻪ ‪ Yes‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ ﺗﺎ ﻥﺼﺐ ﮐﻨﺘﺮل ‪ Activex‬ﺑﺮ روی‬
                                    ‫دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﻨﺘﻘﻞ ﺷﺪﻩ و اﺟﺮا ﻣﯽ ﺷﻮد .‬
‫اﮔﺮ ﺷﻤﺎ ﺑﻪ ﻳﮏ ﭘﺎﻳﮕﺎﻩ اﻳﻨﺘﺮﻥﺖ ﮐﻪ دارای ﻳﮏ ﮐﻨﺘﺮل ‪ Activex‬هﺴﺖ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ ﻥﺮم‬
‫اﻓﺰار ‪ IE‬چﮏ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﮐﺪام ﮐﻨﺘﺮل هﺎ ﺑﺼﻮرت دﻳﺠﻴﺘﺎﻟﯽ ﺗﺎﻳﻴﺪ ﺷﺪﻩ اﻥﺪ . ﻳﮏ ﮐﻨﺘﺮل‬
‫ﺗﺎﻳﻴﺪ ﺷﺪﻩ دﻳﺠﻴﺘﺎﻟﯽ ﺑﺮﻥﺎﻣﻪ ای اﺱﺖ ﮐﻪ ﺑﺼﻮرت ﻣﺴﺘﻘﻞ ﺗﺎﻳﻴﺪ ﺷﺪﻩ اﺱﺖ ﮐﻪ دارای‬
‫وﻳﺮوس هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮی ﻥﻴﺴﺖ و ﺗﺎﺛﻴﺮات ﻣﻨﻔﯽ ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻥﺪارد . ﺷﻤﺎ ﻣﯽ‬
‫ﺗﻮاﻥﻴﺪ ﭘﻨﺠﺮﻩ ای ﺑﺮ روی ﺹﻔﺤﻪ ﻣﺎﻥﻴﺘﻮر ﺧﻮد ﺑﺒﻴﻨﻴﺪ ﮐﻪ ﺑﻪ ﺷﻤﺎ اﻃﻼع ﻣﯽ دهﺪ ﮐﻪ ﺁﻳﺎ‬
‫ﻥﺼﺐ ﮐﺮدن اﻳﻦ ﻥﺮم اﻓﺰار ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺑﻪ اﻣﻨﻴﺖ ﺁن ﺹﺪﻣﻪ ای ﻥﻤﯽ زﻥﺪ و ﻳﺎ‬
‫اﺧﻄﺎر ﻣﯽ دهﺪ ﮐﻪ در ﺹﻮرت ﻥﺼﺐ ﺑﻪ دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺑﺼﻮرت ﻥﺮم اﻓﺰاری ﺁﺱﻴﺐ ﻣﯽ‬
                                                                        ‫رﺱﺎﻥﺪ .‬
                                                                        ‫ﻥﮑﺘﻪ :‬
‫ﺟﺮﻳﺎن دادﻩ : در اﻳﻨﺘﺮﻥﺖ ﺑﻪ ﺟﺎی اﻳﻨﮑﻪ ﻳﮏ ﻓﺎﻳﻞ ﺹﻮﺗﯽ ﺑﺰرگ را ﻗﺒﻞ از اﻳﻨﮑﻪ ﺑﺸﻨﻮﻳﺪ‬
‫ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮﺗﺎن ﻣﻨﺘﻘﻞ ﻥﮑﻨﻴﺪ از ﺟﺮﻳﺎن دادﻩ اﺱﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد . ﭘﺎﻳﮕﺎهﻬﺎی اﻳﻨﺘﺮﻥﺘﯽ‬

‫7‬
‫اﻃﻼﻋﺎت ﺧﻮد را ﺑﺼﻮرت ﻳﮏ ﺟﺮﻳﺎن دادﻩ ﻣﯽ ﻓﺮﺱﺘﻨﺪ ، ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﭘﺲ از چﻨﺪ‬
‫ﺛﺎﻥﻴﻪ از ﺷﺮوع ﺟﺮﻳﺎن دادﻩ ﺁن را ﺑﺎ ﺧﺒﺮ ﮐﺮدﻩ و ﺷﺮوع ﺑﻪ ﭘﺨﺶ ﺁن ﻣﯽ ﮐﻨﺪ و ﺑﻪ هﻤﻴﻦ‬
                       ‫ﺗﺮﺗﻴﺐ ﺁن ﻓﺎﻳﻞ ﺹﻮﺗﯽ ﻳﺎ ﺗﺼﻮﻳﺮی را ﺗﺎ اﻥﺘﻬﺎ اﺟﺮا ﻣﯽ ﮐﻨﺪ .‬
                                     ‫اﺟﺮای ‪ Java Applet‬و ﻧﻤﺎﻳﺸﮕﺮهﺎ :‬
‫ﻥﺮم اﻓﺰار ‪ IE‬ﻳﮏ ‪ Java Applet‬را وﻗﺘﯽ اﺟﺮا ﻣﯽ ﮐﻨﺪ ﮐﻪ ﺹﻔﺤﻪ وب ﺣﺎوی ﺁن در‬
‫ﺣﺎل ﺷﺮوع ﺑﻪ ﻥﻤﺎﻳﺶ ﺑﺮ روی ﺹﻔﺤﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻣﯽ ﺑﺎﺷﺪ . هﺰاران ‪Java Applet‬‬
‫ﺑﺮ روی وب وﺟﻮد دارد ﻥﻈﻴﺮ ﻥﺸﺎﻥﮕﺮهﺎی ﻣﺘﻐﻴﻴﺮ ﺑﺎﻻ و ﭘﺎﻳﻴﻦ ﺑﺮﻥﺪﻩ ﺹﻔﺤﻪ ﮐﻪ از ﺧﻮد‬
              ‫ﺹﺪا ﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﺪ ، ﻣﺎﺷﻴﻦ ﺣﺴﺎﺑﻬﺎ و ﺑﺴﻴﺎری از ﻋﻤﻠﮑﺮدهﺎی دﻳﮕﺮ .‬
                                              ‫اﺟﺮای ﻳﮏ ‪: Java Applet‬‬
‫١- ﺑﻪ ﻳﮏ ﺹﻔﺤﻪ وب ﮐﻪ دارای ‪ Java Applet‬هﺴﺖ ﻣﺘﺼﻞ ﺷﻮﻳﺪ . ﺑﻪ ﻋﻨﻮان‬
                               ‫ﻣﺜﺎل ﺑﻪ ﺁدرس هﺎی زﻳﺮ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬
‫‪http://www.gamelan.com‬‬
                                                                  ‫و ﻳﺎ‬

‫‪http://www.javasoft.com‬‬
‫٢- ﻣﻨﻮی ‪ Category‬را اﻥﺘﺨﺎب ﮐﻨﻴﺪ و ﺱﭙﺲ ﮔﺰﻳﻨﻪ ﻣﺮﺑﻮط ﺑﻪ ﻥﻤﺎﻳﺶ ﺹﻔﺤﻪ وب‬
‫هﻤﺮاﻩ ﺑﺎ ‪ Java Applet‬را ﮐﻠﻴﮏ ﻥﻤﺎﻳﻴﺪ . ‪ Java Applet‬ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ‬
                               ‫ﻣﻨﺘﻘﻞ ﺧﻮاهﺪ ﺷﺪ و ﺑﻪ اﺟﺮا در ﺧﻮاهﺪ ﺁﻣﺪ .‬
‫٣- اﮔﺮ ﻻزم ﺷﺪ اﻃﻼﻋﺎت درﺧﻮاﺱﺘﯽ اﭘﻠﺖ هﺎی ﺟﺎوا و ﻳﺎ ﻣﻨﻮهﺎی ﻣﻨﺎﺱﺐ ﺁن را‬
                                      ‫ﮐﻠﻴﮏ ﮐﻨﻴﺪ ﺗﺎ اﺟﺮای ﺁن ﮐﺎﻣﻞ ﺷﻮد .‬




                                              ‫ﺧﺎﻣﻮش ﮐﺮدن اﺟﺮا ﮐﻨﻨﺪﻩ ‪: JIT‬‬
       ‫١- ﻣﻨﻮی اﺑﺰار را ﮐﻠﻴﮏ ﮐﺮدﻩ و ﺱﭙﺲ ‪ Internet Option‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬


‫8‬
‫٢- ﺟﻌﺒﻪ ‪ Advance‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .ﺹﻔﺤﻪ را ﺑﻪ ﭘﺎﻳﻴﻦ ﺁورﻳﺪ ﺗﺎ ﺑﻪ ﻗﺴﻤﺖ ‪Java‬‬
                                                             ‫‪ MV‬ﺑﺮﺱﻴﺪ .‬
                                ‫٣- ﺟﻌﺒﻪ ﻣﺮﺑﻮط ﺑﻪ ﮔﺰﻳﻨﻪ ‪Java JIT Complier‬‬
                                                  ‫۴- ﮐﻠﻴﺪ ‪ OK‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬
‫ﻥﺮم اﻓﺰار ‪ IE‬دارای ﻳﮏ اﺟﺮا ﮐﻨﻨﺪﻩ ﻥﺮم اﻓﺰار اﺱﺖ ﮐﻪ دﻗﻴﻘﺎ در هﻤﺎن زﻣﺎن ﮔﺮﻓﺘﻦ‬
‫ﺑﺮﻥﺎﻣﻪ ﺁن را اﺟﺮا ﻣﯽ ﮐﻨﺪ )‪ (JIT‬ﺑﺼﻮرت ﭘﻴﺶ ﻓﺮض روﺷﻦ اﺱﺖ . وﻗﺘﯽ ﮐﻪ ﺷﻤﺎ ﺑﺎ‬
‫ﻣﺸﮑﻠﯽ در اﺟﺮای اﭘﻠﺖ هﺎی ﺟﺎوا )‪ (Java Applet‬ﺑﺮﺧﻮرد ﮐﺮدﻳﺪ ، ﻣﯽ ﺗﻮاﻥﻴﺪ اﺟﺮا‬
‫ﮐﻨﻨﺪﻩ ‪ JIT‬ﺧﻮد را در ﻣﻨﻮی ‪ Advance‬در ‪ Internet Option‬ﺧﺎﻣﻮش ﮐﻨﻴﺪ . ﺑﺪﻳﻦ‬
                  ‫ﺗﺮﺗﻴﺐ اﭘﻠﺖ هﺎی ﺟﺎوا ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ دﻳﮕﺮ اﺟﺮا ﻥﺨﻮاهﻨﺪ ﺷﺪ .‬
                              ‫ﮐﻨﺘﺮل ﮐﺮدن ‪ Activex‬و ﺑﺮﻧﺎﻣﻪ هﺎی ‪: Java‬‬
‫ﺗﻮﺱﻂ ‪ IE‬ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ دﻗﻴﻘﺎ ﺗﻌﻴﻴﻦ ﮐﻨﻴﺪ ﮐﻨﺘﺮل هﺎی ‪ Activex‬و ﺑﺮﻥﺎﻣﻪ هﺎی ‪Java‬‬
‫‪ Applet‬ﺗﺎ چﻪ ﺣﺪ ﺑﺮ روی ﺑﺮﻥﺎﻣﻪ هﺎی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺗﺎﺛﻴﺮ ﺑﮕﺬارﻥﺪ ﺑﺎ اﺱﺘﻔﺎدﻩ از‬
‫‪ Security Zones‬اﺱﺘﻔﺎدﻩ ﮐﻨﻨﺪﮔﺎن و ﻣﺪﻳﺮان ﺷﺒﮑﻪ ﻣﯽ ﺗﻮاﻥﻨﺪ درﺑﺎرﻩ ﺱﻄﺢ دﺱﺘﺮﺱﯽ‬
‫ﮐﻨﺘﺮل هﺎی ‪ Activex‬و ﺑﺮﻥﺎﻣﻪ هﺎی ‪ Java Applet‬ﺗﺼﻤﻴﻢ ﺑﮕﻴﺮﻥﺪ . ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل‬
‫ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﻪ ﺑﺮﻥﺎﻣﻪ هﺎی ‪ Java Applet‬ﮐﻪ از ﭘﺎﻳﮕﺎهﻬﺎی ﻣﻌﺘﺒﺮ ﺑﺮ روی اﻳﻨﺘﺮﻥﺖ‬
‫درﻳﺎﻓﺖ ﻣﯽ ﮐﻨﻴﺪ اﺟﺎزﻩ دﺱﺘﺮﺱﯽ ﺑﻴﺸﺘﺮی ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮﺗﺎن را ﺑﺪهﻴﺪ و ﻳﺎ اﻳﻨﮑﻪ ﺟﺎوا اﭘﻠﺖ‬
‫هﺎی ﮔﺮﻓﺘﻪ ﺷﺪﻩ از ﭘﺎﻳﮕﺎهﻬﺎی ﻏﻴﺮ ﻣﻌﺘﺒﺮ را از ﻟﺤﺎظ دﺱﺘﺮﺱﯽ ﺑﻪ ﻓﺎﻳﻞ هﺎی دﺱﺘﮕﺎهﺘﺎن‬




                                       ‫ﻣﺤﺪود ﮐﻨﻴﺪ ﺗﺎ ﻥﺘﻮاﻥﻨﺪ ﺑﻪ ﺁﻥﻬﺎ ﺁﺱﻴﺐ ﺑﺮﺱﺎﻥﻨﺪ .‬




‫9‬
‫ﺕﻐﻴﻴﺮ دادن درﺟﻪ اﻣﻨﻴﺖ ﺑﺮﻧﺎﻣﻪ هﺎی ‪Activex‬‬
 ‫١- ﻣﻨﻮی ‪ Tools‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ و ﺱﭙﺲ ﮔﺰﻳﻨﻪ ‪ Internet Option‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬
                             ‫٢- ﮔﺰﻳﻨﻪ ‪ Security‬را در ﺑﺎﻻی ﭘﻨﺠﺮﻩ ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬
                                           ‫٣- ﺑﺮ روی ﮔﺰﻳﻨﻪ ﻣﻨﺎﺱﺐ ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬
‫۴- ﺁﻥﮕﺎﻩ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﺎ ﺑﺎﻻ ﺑﺮدن ﻥﺸﺎﻥﻪ ، ﺗﺪاﺑﻴﺮ اﻣﻨﻴﺘﯽ ﺷﺪﻳﺪﺗﺮی اﺗﺨﺎذ ﮐﻨﻴﺪ و ﻳﺎ‬
‫ﺑﺎﻟﻌﮑﺲ ﺑﺎ ﭘﺎﻳﻴﻦ ﺁوردن ﻥﺸﺎﻥﻪ درﺟﻪ اﻣﻨﻴﺖ را ﭘﺎﻳﻴﻦ ﺗﺮ ﺑﻴﺎورﻳﺪ و در اﺹﻄﻼح‬
                                            ‫ﺑﻪ ‪ Java Applets‬اﻃﻤﻴﻨﺎن ﮐﻨﻴﺪ .‬
‫۵- ﺑﺮای ﺗﻐﻴﻴﺮ ﻣﺸﺨﺼﺎت ﺣﺮﻓﻪ ای ﺗﺮ ﻣﯽ ﺗﻮاﻥﻴﺪ ﮔﺰﻳﻨﻪ ‪ Custom Level‬را‬
                                                                  ‫ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬
‫۶- ﺑﺮای ﺗﻐﻴﻴﺮ هﺮ ﮐﺪام از ﻣﺸﺨﺼﺎت زﻳﺮ ﻳﮑﯽ از ٣ ﮔﺰﻳﻨﻪ ) ﻗﺎﺑﻞ اﺟﺮا (‬
              ‫‪ ، Enable‬ﺁﻣﺎدﻩ ‪ Prompt‬و ) ﻏﻴﺮ ﻗﺎﺑﻞ اﺟﺮا ( را اﻥﺘﺨﺎب ﮐﻨﻴﺪ .‬
‫• ﻣﺸﺨﺼﻪ ‪ Script Activex‬در ﺣﻘﻴﻘﺖ اﻣﻦ ﺑﻮدن اﺱﮑﺮﻳﭙﺖ هﺎ را چﮏ‬
                                                              ‫ﻣﯽ ﮐﻨﺪ .‬
‫• ﻣﺸﺨﺼﻪ ﺑﻌﺪی اﻣﻨﻴﺖ اﺟﺮای ﮐﻨﺘﺮل هﺎی ‪ Activex‬و ﺑﺮﻥﺎﻣﻪ هﺎی‬
                                           ‫‪ Plug – ins‬چﮏ ﻣﯽ ﮐﻨﺪ .‬
‫• ﮔﺰﻳﻨﻪ ﺑﻌﺪی ﻣﺮﺑﻮط ﺑﻪ ﮔﺮﻓﺘﻦ ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺗﺎﻳﻴﺪ ﺷﺪﻩ ﺗﻮﺱﻂ‬
                                     ‫ﻋﻼﻣﺖ دﻳﺠﻴﺘﺎﻟﯽ اﺱﺖ )‪(Signed‬‬
‫• ﮔﺰﻳﻨﻪ ﺑﻌﺪی ﻣﺮﺑﻮط ﺑﻪ ﮔﺮﻓﺘﻦ ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺗﺎﺉﻴﺪ ﻥﺸﺪﻩ ﺗﻮﺱﻂ‬
                             ‫ﻋﻼﻣﺖ هﺎی دﻳﺠﻴﺘﺎﻟﯽ اﺱﺖ )‪(Unsigned‬‬
‫• ﮔﺰﻳﻨﻪ ﺑﻌﺪی ﻣﺮﺑﻮط ﺑﻪ ﻣﻘﺪار دهﯽ و اﺟﺮای ﮐﻨﺘﺮل هﺎی ‪ Activex‬اﺱﺖ‬
                                        ‫ﮐﻪ اﻣﻨﻴﺖ ﺁﻥﻬﺎ ﺗﺎﻳﻴﺪ ﻥﺸﺪﻩ اﺱﺖ .‬
                                             ‫• ﮔﺰﻳﻨﻪ ‪ Ok‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬
                                                           ‫‪ Activex‬و اﻣﻨﻴﺖ:‬
‫ﻣﻄﻤﺌﻨﺎ ﺗﺎ ﺑﻪ ﺣﺎل درﺑﺎرﻩ وﻳﺮوس هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮی ) ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ ﮐﻪ ﺑﺎ ﺁﻟﻮدﻩ ﮐﺮدن‬
                                                                    ‫ً‬
‫ﺱﻴﺴﺘﻢ هﺎ ﺹﺪﻣﺎﺗﯽ ﺑﻪ ﺁﻥﻬﺎ ﻣﯽ زﻥﻨﺪ ( چﻴﺰهﺎﻳﯽ ﺷﻨﻴﺪﻩ اﻳﺪ . وﻳﺮوس هﺎی ﻣﺨﺘﻠﻔﯽ از‬

‫01‬
‫اﻥﻮاع ﺑﯽ ﺁزار ﺗﺎ ﺑﺴﻴﺎر ﻣﺨﺮب وﺟﻮد دارﻥﺪ و ﺗﻼش هﺎی زﻳﺎدی ﺹﻮرت ﻣﯽ ﮔﻴﺮد ﺗﺎ‬
‫ﺟﻠﻮی اﻳﻦ ﺁﻟﻮدﮔﯽ و اﻥﺘﺸﺎر وﻳﺮوس هﺎ ﮔﺮﻓﺘﻪ ﺷﻮد . اﻣﺎ ﺁﻳﺎ اﻳﻦ اﺣﺘﻤﺎل وﺟﻮد ﻥﺪارد ﮐﻪ‬
          ‫وﻳﺮوﺱﻬﺎ ) ﻳﺎ دﻳﮕﺮ ﻥﺮم اﻓﺰارهﺎی ﻣﺨﺮب ( از ﻃﺮﻳﻖ اﻳﻨﺘﺮﻥﺖ ﭘﺮاﮐﻨﺪﻩ ﺷﻮﻥﺪ ؟‬
‫در روزهﺎی اول وب اﻳﻦ ﺧﻄﺮ چﻨﺪان ﺟﺪی ﻥﺒﻮد چﻮن ﺱﻨﺪهﺎی ‪ HTML‬و ﻓﺎﻳﻠﻬﺎی‬
‫ﮔﺮاﻓﻴﮑﯽ و ﺗﺼﻮﻳﺮی ﺗﻨﻬﺎ اﻥﻮاع ﻓﺎﻳﻞ هﺎﻳﯽ ﺑﻮد ﮐﻪ روی اﻳﻨﺘﺮﻥﺖ ﺟﺎﺑﺠﺎ ﻣﯽ ﺷﺪ . اﻳﻦ‬
‫ﻗﺒﻴﻞ ﻓﺎﻳﻠﻬﺎ ﻣﯽ ﺗﻮاﻥﺴﺘﻨﺪ ﺧﺮاب ﺑﺎﺷﻨﺪ اﻣﺎ در ﺽﻤﻦ هﻴﭻ ﺧﻄﺮی ﺑﺮای ﺱﻴﺴﺘﻤﯽ ﮐﻪ ﺁﻥﻬﺎ‬
                                                           ‫را ﺑﺎر ﻣﯽ ﮐﺮد ﻥﺪاﺷﺘﻨﺪ .‬
‫اﻣﺎ ﺑﺎ روی ﮐﺎر ﺁﻣﺪن ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل اوﺽﺎع دﮔﺮﮔﻮن ﺷﺪ ، چﻮن در اﻳﻦ ﺣﺎﻟﺖ ﺑﺮﻥﺎﻣﻪ‬
‫هﺎ هﻢ ﺟﺰﻳﯽ از وب ﺷﺪﻩ ﺑﻮدﻥﺪ و ﻳﮏ ﺑﺮﻥﺎﻣﻪ هﻢ ﻗﺎﻋﺪﺗﺎ هﺮ ﮐﺎری ﻣﯽ ﺗﻮاﻥﺪ اﻥﺠﺎم ﻣﯽ‬
                             ‫ً‬
‫دهﺪ ) از ﭘﺎک ﮐﺮدن ﻓﺎﻳﻞ هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮی ﻣﻘﺼﺪ ﮔﺮﻓﺘﻪ ﺗﺎ دزدﻳﺪن اﻃﻼﻋﺎت ﺁن و اﻥﺘﻘﺎل‬
‫ﺁﻥﻬﺎ ﺑﻪ ﺟﺎهﺎی ﻥﺎﻣﻌﻠﻮم ( . در اﻳﻨﺠﺎ ﺑﻮد ﮐﻪ ﺷﺮﮐﺘﻬﺎی ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ اﺑﺰارهﺎی ﺑﺮﻥﺎﻣﻪ‬
‫ﻥﻮﻳﺴﯽ وب ﺑﻪ ﺽﺮورت ﺗﻤﻬﻴﺪات اﻣﻨﻴﺘﯽ ﭘﯽ ﺑﺮدﻥﺪ . وﻗﺘﯽ در وب ﮔﺸﺖ و ﮔﺬار ﻣﯽ‬
‫ﮐﻨﻴﺪ . ﻣﺎﻳﻠﻴﺪ ﻣﻄﻤﺌﻦ ﺑﺎﺷﻴﺪ ﮐﺪهﺎﻳﯽ ﮐﻪ ﺑﺎر ﻣﯽ ﮐﻨﻴﺪ ﺱﻴﺴﺘﻢ ﺗﺎن را ﺑﻬﻢ ﻥﺨﻮاهﻨﺪ رﻳﺨﺖ !‬
                          ‫ﺑﺮای ﻣﻘﺎﺑﻠﻪ ﺑﺎ اﻳﻦ ﻣﺸﮑﻞ ﺑﺎﻟﻘﻮﻩ دو روش اﺱﺎﺱﯽ اﺑﺪاع ﺷﺪ .‬
‫روش اول ﺁن ﺑﻮد ﮐﻪ اﺱﺎﺱﺎ اﺟﺎزﻩ اﻋﻤﺎل ﺑﺎﻟﻘﻮﻩ ﺧﻄﺮﻥﺎک ﺑﻪ ﺑﺮﻥﺎﻣﻪ هﺎی وب دادﻩ‬
                                                      ‫ً‬
‫ﻥﺸﻮد . اﻳﻦ راهﯽ ﺑﻮد ﮐﻪ ﺟﺎوا در ﭘﻴﺶ ﮔﺮﻓﺖ . اﭘﻠﺖ هﺎی ﺟﺎوا ﻗﺎدر ﺑﻪ اﻥﺠﺎم اﻓﻌﺎل‬
‫ﺑﺎﻟﻘﻮﻩ ﻣﺨﺮب ) ﻣﺎﻥﻨﺪ دﺱﺘﺮﺱﯽ ﺑﻪ ﺱﻴﺴﺘﻢ ﻓﺎﻳﻞ ( ﻥﻴﺴﺘﻨﺪ و ﻣﯽ ﺗﻮاﻥﻴﺪ ﻣﻄﻤﺌﻦ ﺑﺎﺷﻴﺪ ﮐﻪ‬
        ‫ﺁﻥﻬﺎ ﺑﯽ ﺧﻄﺮ هﺴﺘﻨﺪ درﺱﺖ هﻤﺎﻥﮕﻮﻥﻪ ﮐﻪ ﻳﮏ چﺎﻗﻮی ﭘﻼﺱﺘﻴﮑﯽ ﺑﯽ ﺧﻄﺮ اﺱﺖ !‬
‫در روش دوم ، ﮐﻪ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺑﺮای ﻋﻨﺎﺹﺮ ‪ Activex‬در ﭘﻴﺶ ﮔﺮﻓﺖ ، ﺑﻪ ﺟﺎی‬
‫ﻣﺤﺪود ﮐﺮدن ذاﺗﯽ ﺑﺮﻥﺎﻣﻪ هﺎ از ﻳﮏ ﺗﮑﻨﻮﻟﻮژی ﺑﻨﺎم ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر ﻳﺎ‬
‫‪ Authenticode‬ﺑﺮای ﺗﻌﻴﻴﻦ ﺹﺤﺖ و ﺱﻘﻢ ﻥﺮم اﻓﺰارهﺎ اﺱﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد . اﻳﺪﻩ ﻥﻬﻔﺘﻪ‬
‫در اﻳﻦ روش اﻳﻦ اﺱﺖ ﮐﻪ اﮔﺮ ﺷﻤﺎ ﺑﺪاﻥﻴﺪ ﮐﻪ ﻳﮏ ﻋﻨﺼﺮ ‪ ) Activex‬ﻳﺎ هﺮ ﻥﺮم‬
‫اﻓﺰار دﻳﮕﺮی ( از ﮐﺠﺎ ﺁﻣﺪﻩ ) ﺧﺎﻟﻖ ﺁن ﮐﻴﺴﺖ ( و ﺗﻐﻴﻴﺮی هﻢ در ﺁن ﺹﻮرت ﻥﮕﺮﻓﺘﻪ ،‬
‫دﻳﮕﺮ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﺎ ﺧﻴﺎل راﺣﺖ از ﺁن اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ . ﺑﻪ اﻳﻦ روش اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ﻳﺎ‬
                                              ‫‪ Digital Signing‬هﻢ ﮔﻔﺘﻪ ﻣﯽ ﺷﻮد .‬
                                           ‫اﻣﻀﺎء دﻳﺠﻴﺘﺎﻟﯽ از دﻳﺪﮔﺎﻩ ﮐﺎرﺑﺮان :‬
‫وﻗﺘﯽ از ﻳﮏ ﮐﺎوﺷﮕﺮ ﺑﺎ ﻗﺎﺑﻠﻴﺖ ‪ Activex‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻴﺪ در واﻗﻊ ﺱﻄﻮح اﻣﻨﻴﺘﯽ‬
‫ﻣﺨﺘﻠﻔﯽ را در اﺧﺘﻴﺎر دارﻳﺪ ، ﮐﻪ ﻣﯽ ﺗﻮاﻥﻴﺪ از ﺁﻥﻬﺎ ﺑﺴﺘﻪ ﺑﻪ ﻥﻴﺎزﺗﺎن اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ . اﻳﻦ‬
‫ﺱﻄﻮح ﻋﺒﺎرﺗﻨﺪ از : ﺽﻌﻴﻒ ، ﻣﺘﻮﺱﻂ ، ﺷﺪﻳﺪ . ﺑﺮای اﻥﺘﺨﺎب ﺱﻄﺢ اﻣﻨﻴﺘﯽ دﻟﺨﻮاﻩ در‬
‫ﮐﺎوﺷﮕﺮ ‪ ، Internet Explorer‬ﺁﻳﺘﻢ ‪ Internet Options‬را از ﻣﻨﻮی ‪View‬‬
                                      ‫اﻥﺘﺨﺎب ﮐﺮدﻩ و ﺱﭙﺲ ﺑﻪ ﺑﺮﮔﻪ ‪ Security‬ﺑﺮوﻳﺪ .‬
‫در ﻗﺴﻤﺖ ﭘﺎﻳﻴﻦ دﻳﺎﻟﻮگ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺱﺎﻳﺘﻬﺎی هﺮ ﻣﻨﻄﻘﻪ را اﻥﺘﺨﺎب ﮐﺮدﻩ و ﺱﭙﺲ در‬
‫ﻗﺴﻤﺖ ﭘﺎﻳﻴﻦ دﻳﺎﻟﻮگ ﺱﻄﺢ اﻣﻨﻴﺘﯽ هﺮ ﻣﻨﻄﻘﻪ را ﺗﻌﻴﻴﻦ ﮐﻨﻴﺪ . ﺱﺎﻳﺘﻬﺎی ﻗﺎﺑﻞ اﻃﻤﻴﻨﺎن و‬
‫ﺷﻨﺎﺧﺘﻪ ﺷﺪﻩ را ﻣﯽ ﺗﻮاﻥﻴﺪ در ﻣﻨﻄﻘﻪ ﻣﻮرد اﻋﺘﻤﺎد ) ‪ ( Trusted‬ﻗﺮار دهﻴﺪ . اﻳﻦ ﻣﻨﻄﻘﻪ‬


‫11‬
‫دارای ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﺽﻌﻴﻒ اﺱﺖ . ﺱﺎﻳﺘﻬﺎی ﻥﺎﺷﻨﺎﺧﺘﻪ را در ﻣﻨﻄﻘﻪ ﻣﺤﺪود‬
                           ‫)‪ ( Restricted‬ﮐﻪ ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﺑﺎﻻﻳﯽ دارد ، ﻗﺮار دهﻴﺪ .‬
                                    ‫ﺱﻄﻮح اﻣﻨﻴﺘﯽ ‪ Internet Explorer‬ﻋﺒﺎرﺗﻨﺪ از :‬
‫• ﺷﺪﻳﺪ )‪ : (High‬ﺑﺮﻥﺎﻣﻪ هﺎی ﺑﺎﻟﻘﻮﻩ ﺧﻄﺮﻥﺎک هﺮﮔﺰ ﺑﺎر ﻥﻤﯽ ﺷﻮﻥﺪ . هﺮ اﻗﺪاﻣﯽ‬
                ‫ﺑﺮای ﺑﺎر ﮐﺮدن ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﻪ ﺷﻤﺎ اﻃﻼع دادﻩ ﺧﻮاهﺪ ﺷﺪ .‬
‫• ﻣﺘﻮﺱﻂ ) ‪ : (Medium‬هﻨﮕﺎم ﺑﺎرﮐﺮدن ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﻪ ﺷﻤﺎ اﺧﻄﺎر دادﻩ ﻣﯽ‬
‫ﺷﻮد وﻟﯽ اﻳﻦ اﻣﮑﺎن را ﺧﻮاهﻴﺪ داﺷﺖ ﮐﻪ ) ﺑﺮ اﺱﺎس اﻣﻀﺎء دﻳﺠﻴﺘﺎﻟﯽ ( ﺁﻥﺮا‬
                                                                    ‫ﺑﺎر ﮐﻨﻴﺪ .‬
    ‫• ﺽﻌﻴﻒ )‪ : (Low‬ﺗﻤﺎم ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﺪون هﻴﭻ اﺧﻄﺎری ﺑﺎر ﺧﻮاهﻨﺪ ﺷﺪ .‬
‫• ﻗﺎﺑﻞ ﺗﻨﻈﻴﻢ )‪ : (Custom‬ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﺮای هﺮ ﻥﻮع ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺱﻄﺢ اﻣﻨﻴﺘﯽ‬
‫ﻣﻨﺎﺱﺐ ) هﺮﮔﺰ ﺑﺎر ﻥﺸﻮد ، ﺑﺎ دادن اﺧﻄﺎر ﺑﺎر ﺷﻮد ، هﻤﻴﺸﻪ ﺑﺎر ﺷﻮد ( را‬
‫ﺗﻌﻴﻴﻦ ﮐﻨﻴﺪ . ﺗﻮﺹﻴﻪ ﻣﯽ ﺷﻮد ﺗﺎ زﻣﺎﻥﻴﮑﻪ ﺑﺎ ﺗﻤﺎم اﻥﻮاع ﻣﺤﺘﻮﻳﺎت ﻣﻮﺟﻮد در وب‬
                                   ‫ﺁﺷﻨﺎ ﻥﺸﺪﻩ اﻳﺪ از اﻳﻦ ﮔﺰﻳﻨﻪ اﺱﺘﻔﺎدﻩ ﻥﮑﻨﻴﺪ .‬
‫روش ﮐﺎر اﻳﻦ ﺱﻴﺴﺘﻢ چﻨﻴﻦ اﺱﺖ : وﻗﺘﯽ ﺑﻪ ﺹﻔﺤﻪ وﺑﯽ ﻣﯽ روﻳﺪ ﮐﻪ ﻣﯽ ﺧﻮاهﺪ‬
‫ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺧﻮد را ﺑﺮای ﺷﻤﺎ ﺑﻔﺮﺱﺘﺪ ، ﮐﺎوﺷﮕﺮ اﺑﺘﺪا اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ﺗﻤﺎم ﺁﻳﺘﻢ‬
‫هﺎی ﻥﺮم اﻓﺰاری ﺁﻥﺮا چﮏ ﻣﯽ ﮐﻨﺪ . اﮔﺮ اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ وﺟﻮد ﻥﺪاﺷﺘﻪ ﺑﺎﺷﺪ ،‬
‫ﻣﺤﺘﻮﻳﺎت ﻓﻘﻂ در ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﺽﻌﻴﻒ اﺟﺎزﻩ ﺑﺎرﺷﺪن ﺧﻮاهﻨﺪ داﺷﺖ . در ﻏﻴﺮ اﻳﻦ‬
‫ﺹﻮرت ، ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ اﻃﻼﻋﺎت ﻣﻮﺟﻮد در اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ، ﺱﺎﻟﻢ ﺑﻮدن ﺁﻳﺘﻢ هﺎ ) ﻋﺪم‬
‫ﺗﻐﻴﻴﺮ در ﻣﺤﺘﻮﻳﺎت ﺁﻥﻬﺎ ( ﺑﺮرﺱﯽ ﻣﯽ ﺷﻮد . ﺽﺮورت اﻳﻦ ﮐﺎر از ﺁﻥﺠﺎ ﻥﺎﺷﯽ ﻣﯽ ﺷﻮد‬
‫ﮐﻪ اﻓﺮاد ﺷﺮور ﻣﯽ ﺗﻮاﻥﻨﺪ ﺑﺮای ﻳﮏ ﻥﺮم اﻓﺰار ﺑﯽ ﺽﺮر اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ و ﺗﺎﺉﻴﺪﻳﻪ‬
            ‫ﺑﮕﻴﺮﻥﺪ و ﺱﭙﺲ ﺁﻥﺮا ﺗﻐﻴﻴﺮ دادﻩ و ﺑﺼﻮرت ﺧﺮاﺑﮑﺎر و ﺧﻄﺮﻥﺎک در ﺁورﻥﺪ .‬
‫در ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﻣﺘﻮﺱﻂ ﻥﺎم ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ ﻥﺮم اﻓﺰار ﺑﺎﻳﺴﺘﯽ از ﻣﻨﺎﺑﻊ ﺗﺎﻳﻴﺪ ﺷﺪﻩ از ﺱﻮی‬
‫ﺷﻤﺎ ﻣﻄﺎﺑﻘﺖ دادﻩ ﺧﻮاهﺪ ﺷﺪ . اﮔﺮ اﻳﻦ ﻥﺎم در ﻟﻴﺴﺖ ﻣﻮرد اﻋﺘﻤﺎد ﺷﻤﺎ ﻥﺒﺎﺷﺪ ، دﻳﺎﻟﻮﮔﯽ‬
‫ﻣﻮﺽﻮع را ﮔﻮﺷﺰد ﮐﺮدﻩ و اﺟﺎزﻩ ﺑﺎرﮐﺮدن ﺁﻥﺮا ﺑﻪ ﺷﻤﺎ ﺧﻮاهﺪ داد . در هﻤﻴﻦ دﻳﺎﻟﻮگ‬
‫ﻣﯽ ﺗﻮاﻥﻴﺪ ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ ﻣﺰﺑﻮر را هﻢ ﺑﻪ ﻟﻴﺴﺖ ﻣﻌﺘﻤﺪﻳﻦ ﺧﻮد اﺽﺎﻓﻪ ﮐﻨﻴﺪ .‬




‫21‬
‫ﺱﺎﻳﺘﻬﺎ در ‪. Internet Explorer‬‬
                                       ‫اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ از دﻳﺪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ :‬
‫در ﻳﮏ اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ﺱﻪ دﺱﺘﻪ اﻃﻼﻋﺎت وﺟﻮد دارد : هﻮﻳﺖ ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ ﻥﺮم اﻓﺰار،‬
‫هﻮﻳﺖ ﻣﻨﺒﻊ ﺗﺎﻳﻴﺪ ﮐﻨﻨﺪﻩ ) ﺱﺎزﻣﺎﻥﯽ ﮐﻪ اﻣﻀﺎء را ﺹﺎدر ﮐﺮدﻩ ( و ﻳﮏ ﻋﺪد رﻣﺰ ﺑﺮای‬
                            ‫ﺗﺎﻳﻴﺪ اﻳﻦ ﻣﻄﻠﺐ ﮐﻪ ﻣﺤﺘﻮﻳﺎت ﻥﺮم اﻓﺰار دﺱﺘﮑﺎری ﻥﺸﺪﻩ اﺱﺖ .‬
‫اﮔﺮ ﻣﯽ ﺧﻮاهﻴﺪ ﺑﺮای وب ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﻨﻮﻳﺴﻴﺪ ﺑﺎﻳﺪ ﻳﮏ ﮔﻮاهﻴﻨﺎﻣﻪ ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر‬
‫ﺑﺮای ﺧﻮد دﺱﺖ و ﭘﺎ ﮐﻨﻴﺪ ﺗﺎ ﺑﺘﻮاﻥﻴﺪ ﺑﺮای ﻥﺮم اﻓﺰار هﺎی ﺧﻮد اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ‬
‫ﺑﮕﻴﺮﻳﺪ . اﮔﺮ ﻓﻘﻂ ﺑﺮای اﻳﻨﺘﺮﻥﺖ ﺑﺮﻥﺎﻣﻪ ﻣﯽ ﻥﻮﻳﺴﻴﺪ ﻥﻴﺎزی ﺑﻪ اﻳﻦ ﻣﺮاﺣﻞ ﻥﺪارﻳﺪ چﻮن‬
      ‫ﺱﻄﺢ اﻣﻨﻴﺘﯽ در ﺁﻥﻬﺎ ﻣﻌﻤﻮﻻ ﭘﺎﻳﻴﻦ اﺱﺖ و ﻥﻴﺎزی ﺑﻪ اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ وﺟﻮد ﻥﺪارد .‬
‫اﮔﺮ ﺹﺮﻓﺎ ﺑﺮای ﺷﺮﮐﺖ ﺧﻮد ﻥﺮم اﻓﺰار ﻣﯽ ﻥﻮﻳﺴﻴﺪ ﻣﯽ ﺗﻮاﻥﻴﺪ از ﮔﻮاهﻴﻨﺎﻣﻪ ﺁن اﺱﺘﻔﺎدﻩ‬ ‫ً‬
‫ﮐﻨﻴﺪ . اﻣﺎ ﺗﻮﺹﻴﻪ ﻣﯽ ﺷﻮد ﺧﻮدﺗﺎن هﻢ اﻳﻦ ﮔﻮاهﻴﻨﺎﻣﻪ را ﺑﮕﻴﺮﻳﺪ . ﺑﺎ ﺁن ﮐﻪ ﺷﺮﮐﺘﻬﺎی‬
‫ﻣﺘﻌﺪدی ﺑﺮای ﺹﺪور ﮔﻮاهﻴﻨﺎﻣﻪ ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر وﺟﻮد دارﻥﺪ ، ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺷﺮﮐﺖ‬
‫‪ Verisign‬را ﺗﻮﺹﻴﻪ ﻣﯽ ﮐﻨﺪ . ﺑﺮای ﮐﺴﺐ اﻃﻼﻋﺎت ﺑﻴﺸﺘﺮ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﻪ ﺱﺎﻳﺖ وب‬
                                          ‫اﻳﻦ ﺷﺮﮐﺖ ﮐﻪ در زﻳﺮ ﺁﻣﺪﻩ اﺱﺖ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬
‫‪http://www.verisign.com/developers/index.html‬‬
    ‫هﺰﻳﻨﻪ درﻳﺎﻓﺖ اﻳﻦ ﮔﻮاهﻴﻨﺎﻣﻪ ٠٢ دﻻر در ﺱﺎل و ﻣﺮاﺣﻞ اﻥﺠﺎم ﺁن ﺑﺴﻴﺎر ﺱﺎدﻩ اﺱﺖ :‬
‫١. در ﺱﺎﻳﺖ ﻣﺰﺑﻮر ، ﻳﮏ ﻓﺮم ﭘﺮ ﮐﻨﻴﺪ و در ﺁن اﻃﻼﻋﺎت ﺧﻮاﺱﺘﻪ ﺷﺪﻩ ) از ﺟﻤﻠﻪ‬
                              ‫اﻃﻼﻋﺎت ﻣﺮﺑﻮط ﺑﻪ ﮐﺎرت اﻋﺘﺒﺎری ( را وارد ﮐﻨﻴﺪ .‬
‫٢. ﺷﺮﮐﺖ ‪ Verisign‬ﮐﺪ ﺷﻨﺎﺱﺎﻳﯽ ﺷﻤﺎ را ﺑﺎ ﭘﺴﺖ اﻟﮑﺘﺮوﻥﻴﮏ ﺑﺮاﻳﺘﺎن ارﺱﺎل‬
                                                                    ‫ﺧﻮاهﺪ ﮐﺮد .‬
‫٣. ﺑﻪ ﺹﻔﺤﻪ ﻥﺼﺐ ﮔﻮاهﻴﻨﺎﻣﻪ رﻓﺘﻪ و ﮐﺪ ﺷﻨﺎﺱﺎﻳﯽ ﺧﻮد را وارد ﮐﻨﻴﺪ . اﻳﻦ ﮐﺎر ﺑﺎﻳﺪ‬
         ‫در هﻤﺎن ﮐﺎﻣﭙﻴﻮﺗﺮی ﮐﻪ ﺗﻮﺱﻂ ﺁن ﮐﺪ ﺷﻨﺎﺱﺎﻳﯽ را ﮔﺮﻓﺘﻪ اﻳﺪ ، اﻥﺠﺎم ﺷﻮد .‬
                                    ‫۴. ﮔﻮاهﻴﻨﺎﻣﻪ ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻓﺮﺱﺘﺎدﻩ ﺧﻮاهﺪ ﺷﺪ .‬

‫هﻨﮕﺎم ﺛﺒﺖ ﮔﻮاهﻴﻨﺎﻣﻪ دو ﮔﺰﻳﻨﻪ در اﺧﺘﻴﺎر دارﻳﺪ : ذﺧﻴﺮﻩ ﮐﺮدن ﺁن در ﻳﮏ ﻓﺎﻳﻞ ﻳﺎ در‬
‫رﺟﻴﺴﺘﺮی وﻳﻨﺪوز . ﺗﻮﺹﻴﻪ ﻣﯽ ﺷﻮد ﮔﻮاهﻴﻨﺎﻣﻪ ﺧﻮد را در ﻳﮏ ﻓﺎﻳﻞ و روی دﻳﺴﮏ‬
‫ذﺧﻴﺮﻩ ﮐﻨﻴﺪ ﺗﺎ ﺑﺘﻮاﻥﻴﺪ ﺁن را از ﮔﺰﻥﺪ ﻥﺎﻣﺤﺮﻣﺎن ﺣﻔﻆ ﮐﻨﻴﺪ . در ﺣﻘﻴﻘﺖ ، دو ﻓﺎﻳﻞ ﺑﻪ‬
‫ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻓﺮﺱﺘﺎدﻩ ﻣﯽ ﺷﻮد : ﻳﮑﯽ ﺣﺎوی ﺧﻮد ﮔﻮاهﻴﻨﺎﻣﻪ ) ﺑﺎ ﭘﺴﻮﻥﺪ ( ‪ SPC‬و‬
                                ‫دﻳﮕﺮی ﺣﺎوی ﮐﻠﻴﺪ رﻣﺰﺑﻨﺪی ) ﺑﺎ ﭘﺴﻮﻥﺪ ( ‪. PVK‬‬
                             ‫ﻧﺮم اﻓﺰارهﺎی ﻣﻮرد ﻧﻴﺎز ﺑﺮای اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ :‬
‫ﺑﻌﺪ از درﻳﺎﻓﺖ ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر و ﮐﻠﻴﺪ رﻣﺰ ﺑﻨﺪی ، ﺁﻣﺎدﻩ اﻳﺪ ﺗﺎ اﻣﻀﺎی ﺧﻮد را ﺑﻪ ﻥﺮم‬
‫اﻓﺰارهﺎﻳﯽ ﮐﻪ ﻥﻮﺷﺘﻪ اﻳﺪ اﺽﺎﻓﻪ ﮐﻨﻴﺪ . اﻳﻦ ﺑﺮﻥﺎﻣﻪ هﺎ ﺟﺰﻳﯽ از ﮐﻴﺖ ﺗﻮﺱﻌﻪ ﻥﺮم اﻓﺰار‬
‫‪ Activex‬هﺴﺘﻨﺪ و ﻣﯽ ﺗﻮاﻥﻴﺪ ﺁﻥﻬﺎ را ﻣﺠﺎﻥﯽ از ﺱﺎﻳﺖ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺑﺮدارﻳﺪ . ﻓﺎﻳﻞ هﺎﻳﯽ‬
                                                     ‫ﮐﻪ ﻥﻴﺎز دارﻳﺪ از اﻳﻦ ﻗﺮارﻥﺪ :‬


‫31‬
‫• ‪ :Make Cert‬ﻳﮏ ﮔﻮاهﻴﻨﺎﻣﻪ 905.‪ X‬ﺑﺮای ﺗﺴﺖ ﻣﯽ ﺱﺎزد.‬
           ‫• ‪ :Cert2 SPC‬ﻳﮏ ﮔﻮاهﻴﻨﺎﻣﻪ ﺗﻮزﻳﻊ ﻥﺮم اﻓﺰار ﺁزﻣﺎﻳﺸﯽ ﻣﯽ ﺱﺎزد.‬
                    ‫• ‪ :Sing Code‬ﻳﮏ ﻓﺎﻳﻞ ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل را اﻣﻀﺎ ﻣﯽ ﮐﻨﺪ.‬
‫• ‪ : Chk Trust‬اﻋﺘﺒﺎر ﻓﺎﻳﻞ را ﺑﺮرﺱﯽ ﻣﯽ ﮐﻨﺪ ) ﻣﺸﺎﺑﻪ هﻤﺎن ﮐﺎری ﮐﻪ ﮐﺎوﺷﮕﺮ‬
                                                               ‫ﻣﯽ ﮐﻨﺪ (‬
               ‫• ‪ :Make CTL‬ﻟﻴﺴﺘﯽ از ﮔﻮاهﻴﻨﺎﻣﻪ هﺎی ﻗﺎﺑﻞ اﻋﺘﻤﺎد ﻣﯽ ﺱﺎزد.‬
‫• ‪ :Cert Mgr‬ﺑﺮﻥﺎﻣﻪ ﻣﺪﻳﺮﻳﺖ ﮔﻮاهﻴﻨﺎﻣﻪ هﺎ ، ﻟﻴﺴﺖ هﺎی ﮔﻮاهﻴﻨﺎﻣﻪ هﺎی ﻗﺎﺑﻞ‬
                                                      ‫اﻋﺘﻤﺎد و ﺑﺎﻃﻞ ﺷﺪﻩ.‬
                            ‫• ‪ :Set Reg‬ﺑﺮﻥﺎﻣﻪ ﺛﺒﺖ ﮔﻮاهﻴﻨﺎﻣﻪ در رﺟﻴﺴﺘﺮی.‬
‫ﺑﺎﻳﺪ ﺗﻮﺟﻪ داﺷﺖ ﮐﻪ ﺗﻤﺎم اﻳﻦ اﺑﺰارهﺎ ﺑﺮﻥﺎﻣﻪ هﺎی ‪ DOS‬هﺴﺘﻨﺪ و ﺑﺎﻳﺪ ﭘﻨﺠﺮﻩ -‪MS‬‬
‫‪ DOS‬اﺟﺮا ﺷﻮﻥﺪ . ﺑﺮای ﺑﺎز ﮐﺮدن ﻥﺮم اﻓﺰارهﺎی ﻓﻮق ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﻪ ﺁدرس زﻳﺮ‬
                                                                 ‫ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬
‫‪http://www.msdn.microsoft.com‬‬
                                                               ‫ﺟﺎوا چﻴﺴﺖ ؟‬
‫ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﺱﺖ ﮐﻪ در اواﻳﻞ دهﻪ ٠٩ ﺗﻮﺱﻂ ‪ ، Java Soft‬ﺑﺨﺶ‬
‫ﻥﺮم اﻓﺰاری ﺷﺮﮐﺖ ‪ Sun‬ﺗﻮﺱﻌﻪ دادﻩ ﺷﺪ . هﺪف ﺁن ﺑﻮد ﮐﻪ ﺟﺎوا زﺑﺎﻥﯽ ﺱﺎدﻩ ، ﻗﻮی و‬
‫هﻤﻪ ﻣﻨﻈﻮرﻩ ﺑﺎﺷﺪ . ﺟﺎوا ﺗﻤﺎم ﺟﻨﺒﻪ هﺎی ﻣﺜﺒﺖ ‪ C‬و ++‪ C‬را در ﺧﻮد دارد ، و ﺁن‬
‫چﻴﺰهﺎﻳﯽ ﮐﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن ++‪ C‬از ﺁن ﻥﻔﺮت داﺷﺘﻪ اﻥﺪ ) ﻣﺎﻥﻨﺪ وراﺛﺖ چﻨﺪ ﮔﺎﻥﻪ ،‬
                        ‫ﺗﺤﺮﻳﻒ اﭘﺮاﺗﻮرهﺎ و اﺷﺎرﻩ ﮔﺮهﺎ ( را ﺑﻪ ﮐﻨﺎری ﮔﺬاﺷﺘﻪ اﺱﺖ .‬
‫ﻣﻬﻤﺘﺮﻳﻦ وﻳﮋﮔﻴﻬﺎی ﺟﺎوا اﻳﻦ اﺱﺖ ﮐﻪ اﺱﺎﺱﺎ ﺷﯽء ﮔﺮا اﺱﺖ . اوﻟﻴﻦ ادﻋﺎی ‪OOP‬‬
                                       ‫ً‬
‫ﺗﻮاﻥﺎﻳﯽ اﺱﺘﻔﺎدﻩ ﻣﺠﺪد از ﮐﺪ اﺱﺖ : چﻴﺰی ﮐﻪ ++‪ C‬ﺑﺎ ﺗﻤﺎم ادﻋﺎهﺎﻳﺶ هﺮﮔﺰ ﻥﺘﻮاﻥﺴﺖ‬
‫ﺑﺪان دﺱﺖ ﻳﺎﺑﺪ . اﻣﺎ در اوﻟﻴﻦ ﻗﺪم ﺧﻮاهﻴﺪ دﻳﺪ ﺟﺎوا در اﻳﻦ زﻣﻴﻨﻪ ﺗﺎ چﻪ ﺣﺪ اﻥﺪازﻩ‬
‫ﺹﺤﺖ دارد . ﺗﺼﻮرش را ﺑﮑﻨﻴﺪ ﮐﻪ ﺑﺎ ﺹﺮف ﮐﻤﯽ وﻗﺖ ﺑﺘﻮاﻥﻴﺪ ﺑﺮﻥﺎﻣﻪ ای ﺑﻨﻮﻳﺴﻴﺪ ﮐﻪ‬
‫در ﺱﻴﺴﺘﻢ هﺎی وﻳﻨﺪوز ، ﻳﻮﻥﻴﮑﺲ و ﻣﮑﻴﻨﺘﺎش ﺑﺮاﺣﺘﯽ اﺟﺮا ﺷﻮد . هﻤﻴﻦ ﮐﻪ ﻳﮏ ﺷﺮﮐﺖ‬
‫ﻥﺮم اﻓﺰاری ﺑﺘﻮاﻥﺪ ﺑﺮای ﺗﻤﺎم ﭘﻼﺗﻔﺮم هﺎی ﻣﻮﺟﻮد در ﺁن واﺣﺪ ﭘﺮوژﻩ ای را ﺗﻮﻟﻴﺪ ﮐﻨﺪ‬
‫) و ﻣﻘﺎدﻳﺮ ﻋﻈﻴﻤﯽ ﭘﻮل ﺹﺮﻓﻪ ﺟﻮﻳﯽ ﮐﻨﺪ ( ﺧﻮد ﻣﯽ ﺗﻮاﻥﺪ ﺑﻬﺘﺮﻳﻦ دﻟﻴﻞ اﻗﺒﺎل ﺟﺎوا ﺑﺎﺷﺪ‬
‫و اﻣﺮوز دﻳﮕﺮ هﻤﻪ ) و ﻥﻪ ﻓﻘﻂ ﺷﺮﮐﺘﻬﺎی ﻥﺮم اﻓﺰاری ( ﺑﻪ ﺱﻤﺖ ﺟﺎوا ﮐﺸﻴﺪﻩ ﺷﺪﻩ اﻥﺪ .‬
‫ﺑﺎ اﻳﻦ وﻳﮋﮔﯽ ) اﺱﺘﻘﻼل از ﭘﻼﺗﻔﺮم ( ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺲ ﻣﯽ ﺗﻮاﻥﺪ ﺑﺮای ﺱﻴﺴﺘﻤﯽ ﺑﺮﻥﺎﻣﻪ‬
‫ﺑﻨﻮﻳﺴﺪ ﮐﻪ هﺮﮔﺰ ﺑﺎ ﺁن ﮐﺎر ﻥﮑﺮدﻩ اﺱﺖ . اﻳﻦ وﻳﮋﮔﯽ اﺹﻠﯽ ﺗﺮﻳﻦ ﻋﻠﺖ ﺗﻮﻓﻴﻖ ﺟﺎوا در‬
‫اﻳﻨﺘﺮﻥﺖ اﺱﺖ . اﻳﻨﺘﺮﻥﺖ ﺷﺒﮑﻪ ﭘﻴﭽﻴﺪﻩ ای اﺱﺖ از ﻣﻴﻠﻴﻮﻥﻬﺎ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﺨﺘﻠﻒ در ﺱﺮاﺱﺮ‬
‫دﻥﻴﺎ ، و ﻣﻘﺎوﻣﺖ در ﻣﻘﺎﺑﻞ اﻳﻦ وﺱﻮﺱﻪ ﮐﻪ ﺑﺘﻮاﻥﺪ ﺑﺮﻥﺎﻣﻪ ای ﺑﻨﻮﻳﺴﺪ ﮐﻪ روی ﺗﻤﺎم اﻳﻦ‬
                       ‫ﺱﻴﺴﺘﻢ هﺎی ﻣﺘﻔﺎوت و ﻥﺎ ﻣﺘﺠﺎﻥﺲ اﺟﺮا ﺷﻮد چﻨﺪان ﺱﺎدﻩ ﻥﻴﺴﺖ .‬
‫ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺴﻴﺎر ﺱﺎدﻩ اﺱﺖ چﻮن ﺷﻤﺎ را وادار ﻥﻤﯽ ﮐﻨﺪ ﺗﺎ در ﻣﺤﻴﻂ ﺟﺪﻳﺪ ) و ﻥﺎ‬
‫ﺁﺷﻨﺎﻳﯽ ( ﮐﺎر ﮐﻨﻴﺪ و اﻳﻦ ﺑﺮای ﮐﺴﺎﻥﯽ ﮐﻪ اﻃﻼﻋﺎت ﻓﻨﯽ ﻥﺎچﻴﺰی درﺑﺎرﻩ ﮐﺎﻣﭙﻴﻮﺗﺮ دارﻥﺪ‬


‫41‬
‫ﺑﺴﻴﺎر ﻣﻬﻢ اﺱﺖ . ﺱﺎﺧﺘﺎر زﺑﺎن ﺟﺎوا در ﻥﮕﺎﻩ اول ﺑﺴﻴﺎر ﺷﺒﻴﻪ ‪ C‬و ++‪ C‬اﺱﺖ و اﻳﻦ ﺑﻪ‬
‫هﻴﭻ وﺟﻪ ﺗﺼﺎدﻓﯽ ﻥﻴﺴﺖ . ‪ C‬زﺑﺎﻥﯽ اﺱﺖ ﺱﺎﺧﺖ ﻳﺎﻓﺘﻪ و ++‪ C‬زﺑﺎﻥﻴﺴﺖ ﺷﯽء ﮔﺮا و‬
‫ﻣﻬﻤﺘﺮ از هﻤﻪ ﻗﺴﻤﺖ اﻋﻈﻢ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن دﻥﻴﺎ از ﺁﻥﻬﺎ اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ از ﺱﻮی دﻳﮕﺮ‬
‫اﻳﻦ ﺷﺒﺎهﺖ ﺣﺮﮐﺖ ﺑﻪ ﻃﺮف ﺟﺎوا را ﺑﺮای اﻳﻦ ﻗﺒﻴﻞ اﻓﺮاد ﺱﺎدﻩ ﺧﻮاهﺪ ﮐﺮد ﺑﻨﺎﺑﺮاﻳﻦ‬
‫ﻃﺮاﺣﺎن ﺟﺎوا ﺑﺮای اﺟﺘﻨﺎب از دوﺑﺎرﻩ ﮐﺎری از زﺑﺎﻥﻬﺎی ‪ C‬و ++‪ C‬ﺑﻌﻨﻮان ﻣﺪل‬
                                                                  ‫اﺱﺘﻔﺎدﻩ ﮐﺮدﻥﺪ .‬
‫ﺟﺎوا ﺑﺎ دور اﻥﺪاﺧﺘﻦ اﺷﺎرﻩ ﮔﺮهﺎ و ﺑﺮ دوش ﮐﺸﻴﺪن ﺑﺎر ﻣﺪﻳﺮﻳﺖ ﺣﺎﻓﻈﻪ ، ﺑﺮﻥﺎﻣﻪ‬
           ‫ﻥﻮﻳﺴﺎن ‪ C‬و ++‪ C‬را ﺑﺮای هﻤﻴﺸﻪ از اﻳﻦ ﮐﺎﺑﻮس هﺎ رهﺎﻳﯽ ﺑﺨﺸﻴﺪﻩ اﺱﺖ .‬
‫ﻋﻼﻩ ﺑﺮ ﺁن چﻮن ﺟﺎوا زﺑﺎﻥﯽ ﺑﺮای اﻳﻨﺘﺮﻥﺖ اﺱﺖ ، از اﻳﻤﻨﯽ و ﺣﻔﺎﻇﺖ ذاﺗﯽ ﺑﺎﻻﻳﯽ‬
‫ﺑﺮﺧﻮردار اﺱﺖ . ﻃﺮاﺣﺎن ﺟﺎوا از اﺑﺘﺪا ﻳﮏ ﻣﺤﻴﻂ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﻣﻦ را ﻣﺪ ﻥﻈﺮ‬
             ‫داﺷﺘﻪ اﻥﺪ . ﻣﺴﺌﻠﻪ ﺣﻔﺎﻇﺖ ﺱﻴﺴﺘﻢ هﺎ راﺑﻄﻪ ﺗﻨﮕﺎﺗﻨﮕﯽ ﺑﺎ اﺷﺎرﻩ ﮔﺮهﺎ دارد .‬
‫اﮐﺜﺮ ﻣﻬﺎﺟﻤﺎن ﺑﺮای ورود ﻏﻴﺮ ﻗﺎﻥﻮﻥﯽ ﺑﻪ ﺱﻴﺴﺘﻢ هﺎی دﻳﮕﺮان از اﻳﻦ اﺷﺎرﻩ ﮔﺮهﺎ‬
                ‫اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ و ﺟﺎوا ﺑﺎ ﺣﺬف اﺷﺎرﻩ ﮔﺮهﺎ اﻳﻦ راﻩ را ﺱﺪ ﮐﺮدﻩ اﺱﺖ .‬
‫ﺟﺎوا ﻣﮑﺎﻥﻴﺰم هﺎی ﺣﻔﺎﻇﺘﯽ دﻳﮕﺮی هﻢ دارد ﮐﻪ در ﺟﺎی ﺧﻮد ﺑﻪ ﺁﻥﻬﺎ اﺷﺎرﻩ ﺧﻮاهﻴﻢ‬
                                                                            ‫ﮐﺮد .‬
                                                                  ‫ﺕﮑﺎﻣﻞ ﺟﺎوا :‬
‫ﺟﺎوا هﻢ ﻣﺎﻥﻨﺪ اﮐﺜﺮ اﺧﺘﺮاﻋﺎت ﻣﻬﻢ ﺣﺎﺹﻞ ﺗﻼش ﮔﺮوهﯽ داﻥﺸﻤﻨﺪان ﭘﻴﺸﺘﺎز اﺱﺖ . اﻣﺎ‬
‫ﻥﮑﺘﻪ ﺟﺎﻟﺐ درﺑﺎرﻩ ﺟﺎوا ﺁن اﺱﺖ ﮐﻪ ﺟﺎوا از وﻳﺮاﻥﻪ هﺎی ﻳﮏ ﭘﺮوژﻩ ﺷﮑﺴﺖ ﺧﻮردﻩ‬
                                                                  ‫ﺱﺮ ﺑﺮ ﻣﯽ ﺁورد .‬
‫اﮔﺮ ﭘﺮوژﻩ ﮔﺮﻳﻦ )‪ (Green‬ﮐﻪ ﺷﺮﮐﺖ ‪ Sun‬در ﺱﺎل ١٩٩١ ﺁن را ﺷﺮوع ﮐﺮد ﺑﻪ‬
‫ﻣﻮﻓﻘﻴﺖ ﻣﯽ اﻥﺠﺎﻣﻴﺪ اﻣﺮوز ﻥﻪ ﺱﺎن دﻳﮕﺮ ﻳﮏ ﺷﺮﮐﺖ ﮐﺎﻣﭙﻴﻮﺗﺮی ﻣﯽ ﺑﻮد و ﻥﻪ ﺟﺎوا در‬
‫ﺱﺎل ١٩٩١ ، ﺷﺮﮐﺖ ‪ Sun Microsystems‬در ﺁﻏﺎز راﻩ ﺗﺒﺪﻳﻞ ﺷﺪن ﺑﻪ ﺑﺰرﮔﺘﺮﻳﻦ‬
‫ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ اﻳﺴﺘﮕﺎهﻬﺎی ﮐﺎری ‪ Unix‬ﺑﻮد و در ﻃﻮل ﻓﻘﻂ ﭘﻨﺞ ﺱﺎل درﺁﻣﺪش را از ٠١٢‬
‫ﻣﻴﻠﻴﻮن دﻻر ﺑﻪ ۵/٢ ﻣﻴﻠﻴﺎرد دﻻر رﺱﺎﻥﺪﻩ ﺑﻮد و ﺑﻪ ﻥﻈﺮ ﻣﯽ رﺱﺪ هﻴﭻ چﻴﺰ ﻥﻤﯽ ﺗﻮاﻥﺪ‬
‫ﺟﻠﻮدار ﺁن ﺑﺎﺷﺪ . ﻋﺎﻣﻞ ﻋﻤﺪﻩ ﻣﻮﻓﻘﻴﺖ ‪ Sun‬ﮐﺎرهﺎی ﭘﻴﺸﺘﺎزاﻥﻪ در اﻳﺠﺎد ﺷﺒﮑﻪ هﺎی ﺑﺎز‬
                                  ‫ﺑﻮد و در اﻳﻦ زﻣﻴﻨﻪ هﻴﭻ ﮐﺲ ﺑﻪ ﭘﺎی ﺁن ﻥﻤﯽ رﺱﻴﺪ .‬
‫ﻣﺪﻳﺮان ‪ Sun‬ﺑﻪ اﻳﻦ ﻓﮑﺮ اﻓﺘﺎدﻥﺪ ﺗﺎ ﮐﺎری ﮐﻨﻨﺪ ﮐﻪ اﻳﻦ رﺷﺪ ﺑﺮای ﻣﺪﺗﯽ ﻃﻮﻻﻥﯽ اداﻣﻪ‬
‫ﻳﺎﺑﺪ ﻳﮑﯽ از زﻣﻴﻨﻪ هﺎی ﻣﻮرد ﻋﻼﻗﻪ ‪ Sun‬ﺑﺎزار ﻟﻮازم اﻟﮑﺘﺮوﻥﻴﮑﯽ ﺑﻮد ، ﭘﺮوژﻩ‬
                  ‫‪ Green‬ﺑﻮﺟﻮد ﺁﻣﺪ ﺗﺎ ﺑﺮای اﻳﻦ ﺑﺎزار ﻥﺮم اﻓﺰاری ﭘﻴﺸﺮﻓﺘﻪ ﺧﻠﻖ ﮐﻨﺪ .‬
‫ﻣﻬﻨﺪﺱﺎن ‪ Sun‬ﺗﻮﺟﻪ ﺧﻮد را ﺑﻪ ﻣﻴﮑﺮوﭘﺮوﺱﺴﻮرهﺎﻳﯽ ﻣﻌﻄﻮف ﮐﺮدﻥﺪ ﺗﺎ دارای ﻗﺎﺑﻠﻴﺖ‬
‫اﺱﺘﻔﺎدﻩ در اﻳﻦ ﮔﻮﻥﻪ ﺱﻴﺴﺘﻢ هﺎ ﺑﺎﺷﻨﺪ . اﮔﺮ ﭘﺮوژﻩ ‪ Green‬ﻣﯽ ﺧﻮاﺱﺖ ﻣﻮﻓﻖ ﺑﺎﺷﺪ ﺑﺎﻳﺪ‬
‫ﮐﺎری ﻣﯽ ﮐﺮد ﺗﺎ ﺱﻴﺴﺘﻢ ﻣﺰﺑﻮر ﺑﺘﻮاﻥﺪ ﺑﻪ راﺣﺘﯽ ﺑﻪ ﺑﺴﺘﺮهﺎی ﺱﺨﺖ اﻓﺰاری ﻣﺨﺘﻠﻒ‬
‫ﻣﻨﺘﻘﻞ ﺷﻮد ﺑﺮای اﻳﻦ ﻣﻨﻈﻮر اﺑﺘﺪا از ﮐﺎﻣﭙﺎﻳﻠﺮ ++‪ C‬اﺱﺘﻔﺎدﻩ ﺷﺪ وﻟﯽ ﺑﺰودی ﻥﺎرﺱﺎﻳﯽ‬
‫هﺎی ++‪ C‬در اﻳﻦ زﻣﻴﻨﻪ ﺧﻮد را ﻥﺸﺎن دادﻥﺪ . ﻣﻬﻨﺪﺱﺎن ‪ Sun‬ﺧﻴﻠﯽ ﺱﺮﻳﻊ درﻳﺎﻓﺘﻨﺪ ﮐﻪ‬
‫ﺑﺮای اداﻣﻪ ﮐﺎر ﺑﺎﻳﺪ چﻴﺰی ﺟﺪﻳﺪ و ﻗﻮی ﺧﻠﻖ ﮐﻨﻨﺪ . در هﻤﻴﻦ زﻣﺎن ﺑﻮد ﮐﻪ ‪James‬‬

‫51‬
‫‪ Gosling‬ﮐﺎر ﺑﺮ روی زﺑﺎن ﺟﺪﻳﺪ اوک ‪ Oak‬را ﺷﺮوع ﮐﺮد ﺗﻘﺪﻳﺮ ﺁن ﺑﻮد ﮐﻪ اﻳﻦ‬
            ‫زﺑﺎن ﺟﺎوا ﻥﺎﻣﻴﺪﻩ ﺷﻮد ، چﻮن ادارﻩ ﺛﺒﺖ ﻥﺎم هﺎی ﺗﺠﺎری ‪ Oak‬را رد ﮐﺮد .‬
‫ﺑﺘﺪرﻳﺞ ﻣﻬﻨﺪﺱﻴﻦ ﻳﮏ دﺱﺘﮕﺎﻩ ﺷﺒﻪ ‪ ( Personal Digital Assistant ) PAD‬ﺱﺎﺧﺘﻨﺪ‬
‫ﮐﻪ در ﺁن از ﺱﻴﺴﺘﻢ ﻋﺎﻣﻞ ، زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ و واﺱﻂ ﮐﺎرﺑﺮ ﺟﺎوا اﺱﺘﻔﺎدﻩ ﺷﺪﻩ ﺑﻮد و‬
               ‫ﺑﺎ وﺟﻮد اﺑﺘﺪاﻳﯽ ﺑﻮدن ﺗﻮاﻥﺴﺖ ﺗﻮﺟﻪ ﻣﺪﻳﺮان ‪ Sun‬را ﺑﻪ ﺧﻮد ﺟﻠﺐ ﮐﻨﺪ .‬
‫ﺑﻌﺪهﺎ ﮔﺮوهﯽ ﮐﻪ در ﭘﺮوژﻩ ‪ Green‬ﮐﺎر ﮐﺮدﻩ ﺑﻮدﻥﺪ ﺷﺮﮐﺖ ‪ Java Soft‬را ﺑﻨﻴﺎن‬
                                                                        ‫ﻥﻬﺎدﻥﺪ .‬
                                 ‫ﺷﮑﻞ زﻳﺮ ﭘﺎﻳﮕﺎﻩ وب اﻳﻦ ﺷﺮﮐﺖ را ﻥﺸﺎن ﻣﯽ دهﺪ :‬




          ‫ﺑﺮای رﻓﺘﻦ ﺑﻪ اﻳﻦ ﭘﺎﻳﮕﺎﻩ اﻳﻨﺘﺮﻥﺘﯽ ﻣﯽ ﺑﺎﻳﺴﺖ ﺑﻪ ﺁدرس زﻳﺮ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬
‫‪http://www.sun.com‬‬

‫ﻣﺘﺎﺱﻔﺎﻥﻪ ﺑﺨﺖ ﺑﺎ ﭘﺮوژﻩ ‪ Green‬ﻳﺎر ﻥﺒﻮد و ﺑﻌﺪ از چﻨﺪ ﺷﮑﺴﺖ ﻣﺘﻮاﻟﯽ ‪ Sun‬ﺁن را‬
‫ﮐﻨﺎر ﮔﺬاﺷﺖ . در هﻤﻴﻦ زﻣﺎن ﺑﻮد ﮐﻪ ﻋﺪﻩ ای از ﻣﺤﻘﻘﺎن ‪ NCSA‬ﺷﺮﮐﺖ ‪Net Scape‬‬
‫را ﺗﺎﺱﻴﺲ ﮐﺮدﻥﺪ و اﻳﻦ اﺗﻔﺎﻗﺎت ﺑﺎ ﺁﺗﺸﯽ ﮐﻪ ﺑﻪ ﺱﺮﻋﺖ دﻥﻴﺎ را در ﻣﯽ ﻥﻮردﻳﺪ و ﺷﺒﮑﻪ‬
‫ﺗﺎر ﻋﻨﮑﺒﻮﺗﯽ ﺟﻬﺎﻥﯽ ‪) WWW‬ﮐﻪ ﻣﺨﻔﻒ ‪ World Width Web‬ﻣﯽ ﺑﺎﺷﺪ( ﻥﺎم داﺷﺖ‬
                                                                ‫هﻤﺰﻣﺎن ﺷﺪ .‬
‫ﺑﻨﺎﺑﺮاﻳﻦ اﺗﻔﺎﻗﯽ ﻥﺒﻮد ﮐﻪ ﻣﻬﻨﺪﺱﺎن ﭘﺮوژﻩ ‪ Green‬ﺑﻪ ﺱﻤﺖ اﻳﻨﺘﺮﻥﺖ و وب ﺑﻪ ﻋﻨﻮان‬
                 ‫ﺑﺴﺘﺮ ﭘﺮوژﻩ ‪ Sun‬رواﻥﻪ ﺷﻮﻥﺪ و ﺑﻌﺪ از ﺁن دﻳﮕﺮ ﺟﺰء ﺗﺎرﻳﺦ اﺱﺖ .‬
‫چﻬﺎر ﺱﺎل ﺑﻌﺪ ﭘﺮوژﻩ ‪ Green‬ﺑﻪ ﺑﺎر ﻥﺸﺴﺖ و ﺟﺎوا ﺗﺒﺪﻳﻞ ﺑﻪ داﻏﺘﺮﻳﻦ ﻣﻮﺽﻮع اﻳﻨﺘﺮﻥﺖ‬
‫ﺷﺪ ، هﻤﻪ از ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن و ﻃﺮاﺣﺎن ﺹﻔﺤﺎت وب ﮔﺮﻓﺘﻪ ﺗﺎ ﮐﺎرﺑﺮان اﻳﻨﺘﺮﻥﺖ ﻣﯽ‬
‫ﺧﻮاهﻨﺪ از ﺟﺎوا اﺱﺘﻔﺎدﻩ ﮐﻨﻨﺪ . ‪ Sun‬ﺑﻼﻓﺎﺹﻠﻪ ﺑﺮای ﺟﺎوا ﻳﮏ ﮐﺎوﺷﮕﺮ هﻢ ﺗﻮﻟﻴﺪ‬


‫61‬
‫ﮐﺮد .اﻳﻦ اوﻟﻴﻦ ﮐﺎوﺷﮕﺮی ﺑﻮد ﮐﻪ ﻣﯽ ﺗﻮاﻥﺴﺖ اﭘﻠﺖ هﺎی ﺟﺎوا را اﺟﺮا ﮐﻨﺪ و ﻥﺎم ﺁن هﻢ‬
                                                             ‫‪ Hot Java‬ﺑﻮد .‬
                                       ‫وﻳﮋﮔﻴﻬﺎی زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ‪: Java‬‬
‫ﺟﺎوا وﻳﮋﮔﻴﻬﺎی ﻣﺘﻌﺪدی دارد ﮐﻪ ﺁن را ﻣﻨﺤﺼﺮﺑﻪ ﻓﺮد ﮐﺮدﻩ اﺱﺖ . ﺟﺎوا هﻢ ﮐﺎﻣﭙﺎﻳﻠﺮ‬
                                                               ‫دارد و اﻳﻨﺘﺮﭘﺮﺗﺮ .‬
‫ﺗﻮﺽﻴﺢ : ) ﮐﺎﻣﭙﺎﻳﻠﺮ ﺑﺮﻥﺎﻣﻪ ای اﺱﺖ ﮐﻪ ﻣﺘﻦ ﺑﺮﻥﺎﻣﻪ را ﮔﺮﻓﺘﻪ و در ﭘﺎﻳﺎن ﻳﮏ ﻓﺎﻳﻞ ‪exe‬‬
‫ﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﺪ . ﺑﻌﺪ از ﮐﺎﻣﭙﺎﻳﻞ ﺷﺪن ﻳﮏ ﺑﺮﻥﺎﻣﻪ ، دﻳﮕﺮ ﺑﻪ وﺟﻮد ﮐﺎﻣﭙﺎﻳﻠﺮ ﻥﻴﺎزی ﻥﻴﺴﺖ‬
‫و ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ ‪ exe‬را روی هﺮ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺱﺎزﮔﺎری اﺟﺮا ﮐﺮد . اﻣﺎ اﻳﻨﺘﺮﭘﺮﺗﺮ هﻴﭻ‬
‫ﺑﺮﻥﺎﻣﻪ ‪ exe‬ای ﺗﻮﻟﻴﺪ ﻥﻤﯽ ﮐﻨﺪ و ﺑﺮﻥﺎﻣﻪ را ﺧﻂ ﺑﻪ ﺧﻂ اﺟﺮا ﻣﯽ ﮐﻨﺪ ، ﺑﺮای اﺟﺮای‬
               ‫ﺑﺮﻥﺎﻣﻪ ﺣﺘﻤﺎ ﺑﺎﻳﺪ اﻳﻨﺘﺮﭘﺮﺗﺮ هﻢ روی ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮرد ﻥﻈﺮ ﻣﻮﺟﻮد ﺑﺎﺷﺪ ( .‬
‫هﺮ ﮐﺎﻣﭙﺎﻳﻠﺮ ﻓﻘﻂ ﺑﺮای ﻳﮏ ﺱﻴﺴﺘﻢ ﺧﺎص ) ﻣﺎﻥﻨﺪ اﻳﻨﺘﻞ ، اﭘﻞ ﻳﺎ ﺁﻟﻔﺎ ( ﻣﯽ ﺗﻮاﻥﺪ ﮐﺪ‬
‫اﺟﺮاﻳﯽ ﺗﻮﻟﻴﺪ ﮐﻨﺪ اﻣﺎ ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا ﮐﺪ اﺟﺮاﻳﯽ ‪ Exe‬ﺗﻮﻟﻴﺪ ﻥﻤﯽ ﮐﻨﺪ و در ﻋﻮض ﻳﮏ‬
‫ﻓﺎﻳﻞ ﺑﻴﻨﺎﺑﻴﻨﯽ ﻣﯽ ﺱﺎزد ﮐﻪ ﺑﺎﻳﺖ ﮐﺪ ‪ Byte code‬ﻥﺎم دارد و ﺑﺎﻳﺖ ﮐﺪ چﻴﺰی ﺷﺒﻴﻪ زﺑﺎن‬
‫اﺱﻤﺒﻠﯽ اﺱﺖ ، اﻣﺎ اﻳﻦ زﺑﺎن ﻣﺨﺘﺺ هﻴﭻ ﭘﺮوﺱﺴﻮر ﺧﺎﺹﯽ ﻥﻴﺴﺖ ﺑﻠﮑﻪ زﺑﺎن اﺱﻤﺒﻠﯽ‬
‫ﻳﮏ ﻣﺎﺷﻴﻦ وﻳﮋﻩ ﺑﻨﺎم ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺟﺎوا )‪ ( Java Virtual Mashing‬دارد ﮐﻪ روی‬
‫ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺟﺎوا اﺟﺮا ﻣﯽ ﺷﻮد ، دﺱﺘﻮرات ﻓﺎﻳﻞ ﺑﺎﻳﺖ ﮐﺪ را ﺑﻪ دﺱﺘﻮرات ﻗﺎﺑﻞ ﻓﻬﻢ‬
                       ‫ﺑﺮای ﭘﺮوﺱﺴﻮری ﮐﻪ روی ﺁن اﺟﺮا ﻣﯽ ﺷﻮد ﺗﺒﺪﻳﻞ ﺧﻮاهﺪ ﮐﺮد .‬

                       ‫ﺑﺮﻥﺎﻣﻪ هﺎی ﮐﺎرﺑﺮدی ﺟﺎوا‬
                                ‫اﺷﻴﺎء ﺟﺎوا‬
                            ‫ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺟﺎوا‬
                   ‫ﻳﻮﻥﻴﮑﺲ‬        ‫وﻳﻨﺪوز ﻳﺎ‬     ‫ﻣﮑﻴﻨﺘﺎش‬
                                    ‫2‪Os‬‬
                               ‫ﺱﻴﺴﺘﻢ ﻋﺎﻣﻞ‬



‫اﻣﺎ ﺷﺎﻳﺪ از ﺧﻮد ﺱﺌﻮال ﮐﻨﻴﺪ ﮐﻪ چﺮا ﺟﺎوا اﻳﻦ هﻤﻪ ﮐﺎر را ﺑﺮ ﺧﻮد ) و دﻳﮕﺮان ( ﺱﺨﺖ‬
‫ﮔﺮﻓﺘﻪ اﺱﺖ ؟ اﻳﻦ هﻤﻪ ﻻﻳﻪ و ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺑﺮای چﻴﺴﺖ ؟ ﻳﮑﯽ از ادﻋﺎهﺎی ﺟﺎوا ،‬
‫ﺁزاد ﺑﻮدن از ﺑﺴﺘﺮ ﺱﺨﺖ اﻓﺰاری اﺱﺖ اﻣﺎ اﻳﻦ ﻳﻌﻨﯽ چﻪ ؟ اﮔﺮ ﺟﺎوا ﺑﺨﻮاهﺪ در اﻳﻨﺘﺮﻥﺖ‬
‫ﻣﻮﻓﻖ ﺑﺎﺷﺪ ﺑﺮﻥﺎﻣﻪ هﺎی ﺁن ﺑﺎﻳﺪ ﺑﺘﻮاﻥﻨﺪ ﺑﺪون هﻴﭻ اﺷﮑﺎﻟﯽ روی ﺗﻤﺎم ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی‬
‫ﻣﺘﺼﻞ ﺑﻪ اﻳﻨﺘﺮﻥﺖ اﺟﺮا ﺷﻮﻥﺪ . اﻣﺎ ﺷﻤﺎ ﺑﻬﺘﺮ ﻣﯽ داﻥﻴﺪ ﮐﻪ اﻳﻨﺘﺮﻥﺖ ﺷﺒﮑﻪ ﻋﻈﻴﻤﯽ اﺱﺖ‬
‫از ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی ﻥﺎﻣﺘﺠﺎﻥﺲ ، از ﺱﻮﭘﺮ ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی ﻋﻈﻴﻢ ﮔﺮﻓﺘﻪ ﺗﺎ ‪ PC‬هﺎی ﻣﺒﺘﻨﯽ ﺑﺮ‬



‫71‬
‫روﺱﺴﻮر هﺎی اﻳﻨﺘﻞ و ﭘﺎور ﭘﯽ ﺱﯽ ﺗﺎ ﻣﺎﺷﻴﻦ هﺎی ﻳﻮﻥﻴﮑﺲ ﻣﺒﺘﻨﯽ ﺑﺮ ﭘﺮوﺱﺴﻮرهﺎی ﺁﻟﻔﺎ‬
                                                                           ‫و ... !‬
      ‫چﮕﻮﻥﻪ ﻳﮏ ﺑﺮﻥﺎﻣﻪ اﺟﺮاﻳﯽ ﻣﯽ ﺗﻮاﻥﺪ روی اﻳﻦ ﻃﻴﻒ وﺱﻴﻊ ﮐﺎﻣﭙﻴﻮﺗﺮهﺎ اﺟﺮا ﺷﻮد ؟‬
‫اﻳﺪﻩ اوﻟﻴﻪ ﺱﺎدﻩ اﺱﺖ : ﺑﺮﻥﺎﻣﻪ هﺎ ﺑﺮای ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﮐﺎﻣﭙﺎﻳﻞ ﺷﻮﻥﺪ و اﻳﻦ ﻣﺎﺷﻴﻦ‬
                       ‫ﻣﺠﺎزی روی ﺗﻤﺎم ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی ﻣﺘﺼﻞ ﺑﻪ اﻳﻨﺘﺮﻥﺖ ﻥﺼﺐ ﺷﻮد .‬
‫اﻳﻦ دﻗﻴﻘﺎ هﻤﺎن روﺷﯽ اﺱﺖ ﮐﻪ ﺟﺎوا در ﭘﻴﺶ ﮔﺮﻓﺘﻪ اﺱﺖ . ﺑﺮﻥﺎﻣﻪ ﺗﺎن را ﺑﺎ ﻳﮏ‬  ‫ً‬
‫ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا ﮐﺎﻣﭙﺎﻳﻞ ﮐﻨﻴﺪ ، ﺁن را در ﭘﺎﻳﮕﺎﻩ وب ﺧﻮد ﻗﺮار دهﻴﺪ و ﺑﻪ دﻳﮕﺮان اﻃﻼع‬
‫دهﻴﺪ ﺗﺎ ﺑﺎ ﻳﮏ ﮐﺎوﺷﮕﺮ ﻣﺠﻬﺰ ﺑﻪ ﺟﺎوا ) ‪ (Java – Enabled Brower‬اﻳﻦ ﺑﺮﻥﺎﻣﻪ را‬
‫ﮐﻪ ﻣﻤﮑﻦ اﺱﺖ در دل ﻳﮏ ﺹﻔﺤﻪ وب ﻗﺮار داﺷﺘﻪ ﺑﺎﺷﺪ اﺟﺮا ﮐﻨﻨﺪ . ﺷﺎﻳﺪ هﺮﮔﺰ ﺗﺼﻮر‬
‫ﻥﻤﯽ ﮐﺮدﻳﺪ ﮐﻪ ﺑﺮﻥﺎﻣﻪ ای را ﮐﻪ ﺑﺎ ﻳﮏ ‪ PC‬اﻳﻨﺘﻞ ﻥﻮﺷﺘﻪ اﻳﺪ روی ﻳﮏ ﻣﺎﺷﻴﻦ ﻣﮑﻴﻨﺘﺎش‬
 ‫ﻳﺎ ﻳﻮﻥﻴﮑﺲ اﺟﺮا ﺷﻮد وﻟﯽ اﮐﻨﻮن ﺑﻪ ﻟﻄﻒ ﺟﺎوا اﻳﻦ دﻳﮕﺮ ﺁرزوﻳﯽ دﺱﺖ ﻥﻴﺎﻓﺘﻨﯽ ﻥﻴﺴﺖ .‬
‫ﺷﯽء ﮔﺮاﻳﯽ در ﺟﺎوا ﺑﻪ ﻏﺎﻳﺖ ﺧﻮد رﺱﻴﺪﻩ اﺱﺖ . ﺟﺎوا در اﺱﺘﻔﺎدﻩ از اﺷﻴﺎء ﺑﺴﻴﺎر ﻣﻔﻴﺪ‬
‫و ﺱﺨﺖ ﮔﻴﺮ اﺱﺖ و ﺗﺨﻄﯽ از اﺹﻮل را ﻥﻤﯽ ﭘﺬﻳﺮد . در ++‪ C‬ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ از اﺷﻴﺎء‬
‫ﺑﻪ ﻣﻮازات ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺑﻪ ﺱﺒﮏ ﻗﺪﻳﻢ اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ و اﮐﺜﺮا در ﭘﺎﻳﺎن ﮐﺎر چﻨﺎن ﻣﻠﻐﻤﻪ‬
                          ‫ً‬
‫ای ﺑﻮﺟﻮد ﻣﯽ ﺁﻳﺪ ﮐﻪ ﻣﺪﻳﺮﻳﺖ ﺁن ﺑﺎ روش هﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا اﻣﮑﺎن دارد ﻥﻪ‬
‫ﺑﺎ روش هﺎی ﻗﺪﻳﻤﯽ . ﺟﺎوا دﻳﮕﺮ ﺑﻪ ﺷﻤﺎ اﺟﺎزﻩ ﻥﻤﯽ دهﺪ ﺗﺎ ﺧﻮد را در چﻨﻴﻦ ﻣﺨﻤﺼﻪ‬
                                                                ‫ای ﮔﺮﻓﺘﺎر ﮐﻨﻴﺪ !‬
                                                   ‫ﺷﺮوع ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺑﺎ ﺟﺎوا :‬
‫اوﻟﻴﻦ ﺑﺮﻥﺎﻣﻪ ای ﮐﻪ ﻣﯽ ﻥﻮﻳﺴﻴﻢ ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻣﺘﮑﯽ ﺑﻪ ﺧﻮد اﺱﺖ ﺑﻨﺎم ‪. Hello World‬‬
‫ﺗﻔﺎوت ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻣﺘﮑﯽ ﺑﻪ ﺧﻮد و ﻳﮏ اﭘﻠﺖ ﺁن اﺱﺖ ﮐﻪ در ﺑﺮﻥﺎﻣﻪ ﻣﺘﮑﯽ ﺑﻪ ﺧﻮد ) ﮐﻪ‬
‫از اﻳﻦ ﺑﻪ ﺑﻌﺪ ﺑﻪ ﺁن ﻓﻘﻂ ﺑﺮﻥﺎﻣﻪ ﺧﻮاهﻴﻢ ﮔﻔﺖ ( از ﻣﺘﺪی ﺑﻨﺎم ) (‪ main‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد‬
                                                 ‫در ﺣﺎﻟﻴﮑﻪ اﭘﻠﺖ چﻨﻴﻦ ﻣﺘﺪی ﻥﺪارد .‬
‫ﺑﺮﻥﺎﻣﻪ ‪ Hello World‬ﺑﺴﻴﺎر ﺱﺎدﻩ اﺱﺖ و ﻓﻘﻂ ﺟﻤﻠﻪ ”‪ “Hello World‬را ﻥﻤﺎﻳﺶ ﻣﯽ‬
‫دهﺪ ﺑﺎ اﻳﻦ ﺣﺎل ﻣﯽ ﺗﻮان از ﺁن ﺑﻪ ﻋﻨﻮان ﺱﻨﮓ ﺑﻨﺎی ﺑﺮﻥﺎﻣﻪ هﺎی ﭘﻴﺸﺮﻓﺘﻪ ﺗﺮ اﺱﺘﻔﺎدﻩ‬
‫ﮐﺮد چﻮن ﺗﻤﺎم ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا ﺱﺎﺧﺘﺎر ﮐﻠﯽ ﻣﺸﺎﺑﻬﯽ دارﻥﺪ . ﺑﻄﻮر ﻣﺜﺎل ﺑﻪ ﻟﻴﺴﺖ زﻳﺮ‬
                                                                           ‫ﻥﮕﺎﻩ ﮐﻨﻴﺪ :‬
‫{ ‪1: class Hello World‬‬
‫{)][ ‪2: Public static void main (string args‬‬
‫,)”‪3: system. Out. Println (“Hello World‬‬
‫}: 4‬
‫}: 5‬
‫اﻳﻦ ﺑﺮﻥﺎﻣﻪ ﭘﻨﺞ ﺧﻄﯽ دارای ﺗﻤﺎم وﻳﮋﮔﻴﻬﺎی ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﮐﺎﻣﻞ و ﻣﻔﺼﻞ ﺷﯽ ء ﮔﺮاﺱﺖ‬
‫در ﺽﻤﻦ اﻋﺪاد اﺑﺘﺪای هﺮ ﺧﻂ را ﻥﺒﺎﻳﺪ وارد ﮐﺮد چﻮن ﺟﺰﺉﯽ از ﺑﺮﻥﺎﻣﻪ ﻥﻴﺴﺘﻨﺪ اﻳﻨﻬﺎ‬
‫ﻓﻘﻂ ﺑﺮای ارﺟﺎع ﺑﻪ ﺑﺮﻥﺎﻣﻪ هﻨﮕﺎم ﺗﺸﺮﻳﺢ ﺁن اﺱﺖ . ﺑﺮﻥﺎﻣﻪ را ﺑﺎ ﻥﺎم .‪HelloWorld‬‬
                       ‫‪ java‬ذﺧﻴﺮﻩ ﮐﻨﻴﺪ . ﻥﺎم ﺑﺮﻥﺎﻣﻪ ﺑﺎﻳﺪ هﻤﺎن ﻥﺎم ﮐﻼس ﺑﺮﻥﺎﻣﻪ ﺑﺎﺷﺪ .‬

‫81‬
‫ﺗﺤﻠﻴﻞ ﺑﺮﻥﺎﻣﻪ : اﻳﻦ ﺑﺮﻥﺎﻣﻪ دو ﻗﺴﻤﺖ ﻣﻬﻢ دارد .‬
                                 ‫١- ﺗﻤﺎم ﺑﺮﻥﺎﻣﻪ در واﻗﻊ ﻳﮏ ﺗﻌﺮﻳﻒ ﮐﻼس اﺱﺖ .‬
                                     ‫٢- ﮐﻞ ﺑﺮﻥﺎﻣﻪ در ﻣﺘﺪ ) (‪ Main‬ﻗﺮار دارد .‬
‫ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن ﺑﺮﻥﺎﻣﻪ ﺑﺎﻳﺪ از ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا )‪ (javac‬اﺱﺘﻔﺎدﻩ ﮐﺮد روش ﮐﺎر‬
                                                                      ‫چﻨﻴﻦ اﺱﺖ :‬
‫‪Java HelloWorld. java‬‬
‫ﮐﺎﻣﭙﺎﻳﻠﺮ ﺑﻌﺪ از ﭘﺎﻳﺎن ﮐﺎر ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﺑﻨﺎم ‪ HelloWorld. Class‬ﺗﻮﻟﻴﺪ ﺧﻮاهﺪ‬
‫ﮐﺮد . اﺹﻮﻻ ﮐﺎﻣﭙﺎﻳﻠﺮ ﺑﺮای هﺮ ﮐﻼس ﺑﺮﻥﺎﻣﻪ ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﺟﺪاﮔﺎﻥﻪ ﺗﻮﻟﻴﺪ ﺧﻮاهﺪ‬
                                                                    ‫ً‬
‫ﮐﺮد . ﻓﺎﻳﻞ ﺗﻮﻟﻴﺪ ﺷﺪﻩ ﻳﮏ ﻓﺎﻳﻞ اﺟﺮاﻳﯽ ﻣﺴﺘﻘﻞ ﻥﻴﺴﺖ . ﺑﺮای اﺟﺮای اﻳﻦ ﻓﺎﻳﻞ ﺑﺎﻳﺪ از‬
‫اﻳﻨﺘﺮﭘﺮﺗﺮ ﺟﺎوا اﺱﺘﻔﺎدﻩ ﮐﺮد . اﻳﻨﺘﺮﭘﺮﺗﺮ ﺟﺎوا ، ‪ Java‬ﻥﺎم دارد . ﺑﺮای اﺟﺮای ﻓﺎﻳﻞ‬
                                                 ‫ﮐﻼس ﺗﻮﻟﻴﺪ ﺷﺪﻩ چﻨﻴﻦ ﺑﺎﻳﺪ ﮐﺮد :‬
‫‪Java HelloWorld‬‬
‫اﮔﺮ هﻤﻪ چﻴﺰ درﺱﺖ ﭘﻴﺶ رﻓﺘﻪ ﺑﺎﺷﺪ ، ﺑﺎﻳﺪ ﺟﻤﻠﻪ ”!‪ “Hello World‬را روی‬
                                              ‫ﺹﻔﺤﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺧﻮد ﻣﺸﺎهﺪﻩ ﮐﻨﻴﺪ .‬
‫ﻥﮑﺘﻪ : دﻗﺖ ﮐﻨﻴﺪ ﮐﻪ ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا و اﻳﻨﺘﺮﭘﺮﺗﺮ ﺟﺎوا دو چﻴﺰ ﻣﺘﻔﺎوﺗﻨﺪ . ﮐﺎﻣﭙﺎﻳﻠﺮ از‬
‫ﻓﺎﻳﻞ ﻣﺘﻦ ﺑﺮﻥﺎﻣﻪ ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﻣﯽ ﺱﺎزد و اﻳﻨﺘﺮﭘﺮﺗﺮ ﻓﺎﻳﻞ ﮐﻼس را اﺟﺮا ﻣﯽ‬
                                                                            ‫ﮐﻨﺪ .‬
                                                       ‫اﻳﺠﺎد ﻳﮏ اﭘﻠﺖ ﺟﺎوا :‬
‫اﻳﺠﺎد اﭘﻠﺖ ﺑﺎ اﻳﺠﺎد ﺑﺮﻥﺎﻣﻪ ﻓﺮق دارد و ﻗﻮاﻋﺪ ﻣﺘﻔﺎوﺗﯽ ﺑﺮ ﺁن ﺣﻤﮑﻔﺮﻣﺎﺱﺖ . ﻳﮏ‬
‫اﭘﻠﺖ ﺑﺮای اﺟﺮا در ﺹﻔﺤﺎت وب ﻥﻮﺷﺘﻪ ﻣﯽ ﺷﻮد ، ﺑﻨﺎﺑﺮاﻳﻦ ﮐﻤﯽ ﭘﻴﭽﻴﺪﻩ ﺗﺮ از ﻳﮏ‬
‫ﺑﺮﻥﺎﻣﻪ اﺱﺖ . در واﻗﻊ ﻳﮏ اﭘﻠﺖ ﺗﺎ زﻣﺎﻥﯽ ﮐﻪ در ﻳﮏ ﮐﺎوﺷﮕﺮ اﺟﺮا ﻥﺸﻮد ﺧﺮوﺟﯽ‬
                                                ‫ﺧﻮد را ﻥﻤﺎﻳﺶ ﻥﺨﻮاهﺪ داد .‬
‫ﺑﺎﻳﺪ ﺱﻌﯽ ﺷﻮد ﺑﺮﻥﺎﻣﻪ هﺎ ، اﭘﻠﺖ هﺎ و ﺹﻔﺤﺎت وب را در داﻳﺮﮐﺘﻮرﻳﻬﺎی ﺟﺪاﮔﺎﻥﻪ‬
                                                               ‫ذﺧﻴﺮﻩ ﮐﺮد .‬
‫اﭘﻠﺘﯽ ﮐﻪ در اﻳﻦ ﻗﺴﻤﺖ ﻣﯽ ﻥﻮﻳﺴﻴﻢ ‪ Hello World Applet‬ﻥﺎم دارد . ﺑﻪ ﻟﻴﺴﺖ‬
                                                            ‫زﻳﺮ ﻥﮕﺎﻩ ﮐﻨﻴﺪ :‬
‫;‪1: import java. Awt. Graphics‬‬
‫:2‬
‫{ ‪3: public class Hello World Applet Extends java. Applet. Applet‬‬
‫:4‬
‫{ )‪5: Public Void Paint (Graphics G‬‬
‫;) 52 , 5,”!‪6: g. drawstring (“Hello World‬‬
‫} :7‬
‫} :8‬


‫91‬
‫اﭘﻠﺖ را ﺑﺎ ﻥﺎم ‪ HelloWorldApplet. Java‬ذﺧﻴﺮﻩ ﮐﻨﻴﺪ. در ﻣﻮرد ﻳﮏ اﭘﻠﺖ ﺑﺎﻳﺪ‬
                                                        ‫ﺑﻪ چﻨﺪ ﻥﮑﺘﻪ ﺗﻮﺟﻪ ﮐﻨﻴﺪ :‬
‫دﺱﺘﻮر ‪ import‬در ﺧﻂ ١ ﺷﺒﻴﻪ دﺱﺘﻮر ‪ #include‬در زﺑﺎن ‪ C‬اﺱﺖ ﺑﺎ اﻳﻦ دﺱﺘﻮر‬
             ‫اﭘﻠﺖ ﻣﯽ ﺗﻮاﻥﺪ از ﮐﻼﺱﻬﺎی ‪ JDK‬ﺑﺮای ﮐﺎرهﺎی ﮔﺮاﻓﻴﮑﯽ اﺱﺘﻔﺎدﻩ ﮐﻨﺪ .‬
‫ﻣﺘﺪ ) ( ‪ Paint‬ﺑﺮای ﻥﻤﺎﻳﺶ ﻣﺤﺘﻮﻳﺎت اﭘﻠﺖ اﺱﺖ در اﻳﻦ ﺟﺎ ﻋﺒﺎرت ‪Hello‬‬
‫! ‪ World‬روی ﺹﻔﺤﻪ ﻥﻤﺎﻳﺶ دادﻩ ﺧﻮاهﺪ ﺷﺪ اﭘﻠﺖ هﺎ ﻣﺘﺪ ) (‪ main‬ﻥﺪارﻥﺪ و ﺑﻪ‬
          ‫ﺟﺎی ﺁن از ﻣﺘﺪهﺎی ) (‪ init‬و ) (‪ Start‬ﻳﺎ ) ( ‪ Paint‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ .‬
‫ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن اﻳﻦ اﭘﻠﺖ چﻨﻴﻦ ﺑﺎﻳﺪ ﮐﺮد ‪java Hello World Applet. java‬‬
‫در اﻳﻦ ﺣﺎﻟﺖ هﻢ ﮐﺎﻣﭙﺎﻳﻠﺮ ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﺑﻪ ﻥﺎم ‪Hello World Applet. Class‬‬
‫اﻳﺠﺎد ﺧﻮاهﺪ ﮐﺮد اﻣﺎ ﺑﺮای اﺟﺮای ﻳﮏ اﭘﻠﺖ ﻳﮏ ﻗﺪم دﻳﮕﺮ هﻢ ﺑﺎﻳﺪ ﺑﺮداﺷﺖ و ﺁن‬
‫اﻳﺠﺎد ﻳﮏ ﻓﺎﻳﻞ ‪ HTML‬اﺱﺖ ﮐﻪ اﭘﻠﺖ در ﺁن اﺟﺮا ﺧﻮاهﺪ ﺷﺪ ﻣﯽ ﺗﻮاﻥﻴﺪ ﻳﮏ ﻓﺎﻳﻞ‬
                                      ‫‪ HTML‬را ﺑﺮای اﻳﻦ ﻣﻨﻈﻮر ﻣﺸﺎهﺪﻩ ﮐﻨﻴﺪ .‬
                          ‫ﻳﮏ ‪ HTML‬ﺑﺮای اﺟﺮای اﭘﻠﺖ ‪: Hello World‬‬

‫>‪1: <html‬‬
‫>‪2: <head‬‬
‫>‪3: <title>Hello to Everyone</title‬‬
‫>‪4: </head><body‬‬
‫:‪5: <p> My Java Applet says‬‬
‫>52=‪6: <applet code=”Hello World Applet. Class” width=150 height‬‬
‫>‪7: </applet‬‬
‫>‪8: </body‬‬
‫>‪9: </html‬‬
                                                               ‫ﺗﺤﻠﻴﻞ ﺑﺮﻥﺎﻣﻪ :‬
‫ﺑﺮای اﺟﺮای ﻳﮏ اﭘﻠﺖ در ﻓﺎﻳﻞ ‪ HTML‬ﺑﺎﻳﺪ از ﺑﺮچﺴﺐ > ‪ < applet‬اﺱﺘﻔﺎدﻩ ﮐﺮد‬
‫ﺑﺮای ﻣﺸﺨﺺ ﮐﺮدن ﻥﺎم ﮐﻼﺱﯽ ﮐﻪ اﭘﻠﺖ در ﺁن اﺱﺖ از ﺹﻔﺖ ‪ CODE‬اﺱﺘﻔﺎدﻩ‬
‫ﮐﻨﻴﺪ . ﺑﺮای ﻣﺸﺨﺺ ﮐﺮدن اﺑﻌﺎد ﭘﻨﺠﺮﻩ ای ﮐﻪ اﭘﻠﺖ در ﺁن اﺟﺮا ﺧﻮاهﺪ ﺷﺪ از ﺹﻔﺖ‬
‫هﺎی ‪ Width‬و ‪ Height‬اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ . اﻋﺪاد ﻣﺸﺨﺺ ﺷﺪﻩ ﺑﺮ ﺣﺴﺐ ﭘﻴﮑﺴﻞ هﺴﺘﻨﺪ‬
‫اﻳﻦ ﻓﺎﻳﻞ را ﺑﺎ ﻥﺎم ‪ HelloWorldApplet.html‬ذﺧﻴﺮﻩ ﮐﻨﻴﺪ ﺣﺎﻻ ﺁﻣﺎدﻩ اﻳﺪ ﺗﺎ اﭘﻠﺖ‬
                                ‫را اﺟﺮا ﮐﻨﻴﺪ اﻳﻦ ﮐﺎر ﺑﻪ دو روش اﻣﮑﺎﻥﭙﺬﻳﺮ اﺱﺖ :‬
                      ‫١- اﺱﺘﻔﺎدﻩ از ﮐﺎوﺷﮕﺮهﺎی ﻣﺠﻬﺰ ﺑﻪ ﺟﺎوا ﻣﺎﻥﻨﺪ ‪Net Scape‬‬
‫٢- اﺱﺘﻔﺎدﻩ از ﺑﺮﻥﺎﻣﻪ ‪ Applet Viewer‬ﮐﻪ ﺑﺎ ‪ JDK‬ﻣﯽ ﺁﻳﺪ . اﻳﻦ ﺑﺮﻥﺎﻣﻪ ﮐﻞ‬
          ‫ﺹﻔﺤﻪ وب را ﻥﻤﯽ ﺗﻮاﻥﺪ ﻥﻤﺎﻳﺶ دهﺪ و ﻓﻘﻂ اﭘﻠﺖ را ﻥﻤﺎﻳﺶ ﺧﻮاهﺪ داد .‬



‫02‬
‫ﺑﺮای دﻳﺪن اﭘﻠﺖ در ﻳﮏ ﮐﺎوﺷﮕﺮ ، ﻓﺎﻳﻞ ‪ html‬ﻓﻮق را ﺑﺎز ﮐﻨﻴﺪ ، ﺑﺎ اﻳﻦ ﮐﺎر ﺹﻔﺤﻪ‬
‫وب و اﭘﻠﺖ درون ﺁن ﺑﻪ ﻥﻤﺎﻳﺶ در ﺧﻮاهﺪ ﺁﻣﺪ . روش اﺱﺘﻔﺎدﻩ از ‪applet viewer‬‬
                                                                      ‫چﻨﻴﻦ اﺱﺖ .‬
‫ﻥﮑﺘﻪ : ﺑﺎ وﺟﻮد اﻳﻨﮑﻪ ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ ‪ applet viewer‬را از ﻣﺤﻞ ﻓﺎﻳﻞ ‪ html‬اﺟﺮا‬
‫ﮐﺮد وﻟﯽ در اﻳﻦ ﺣﺎﻟﺖ ﺑﺪون ﺑﺴﺘﻦ ﺁن ﻥﻤﯽ ﺗﻮان اﭘﻠﺖ را ﻣﺠﺪدا ﺑﺎر ﮐﺮد . در ﺣﺎﻟﻴﮑﻪ‬
                     ‫ً‬
‫اﮔﺮ ﻣﺸﺎهﺪﻩ ﮔﺮ اﭘﻠﺖ از ﻣﺤﻞ دﻳﮕﺮی اﺟﺮا ﺷﻮد ) ﻣﺎﻥﻨﺪ دﺱﺘﻮر ﻓﻮق( ﻣﯽ ﺗﻮان ﻳﮏ‬
      ‫اﭘﻠﺖ را ﺗﻐﻴﻴﺮ دادﻩ ، ﻣﺠﺪدا ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدﻩ و ﺱﭙﺲ دوﺑﺎرﻩ در ﻣﺸﺎهﺪﻩ ﮔﺮ ﺑﺎر ﮐﺮد .‬
                                                       ‫ً‬
‫ﺑﻄﻮر ﮐﻠﯽ ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﺱﺖ ﮐﻪ ﺑﺎ ﺁن ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ هﺎی ﻣﺘﻨﻮﻋﯽ‬
‫ﻥﻮﺷﺖ ﺑﻴﺸﺘﺮﻳﻦ ﮐﺎرﺑﺮد ﺟﺎوا در اﻳﻨﺠﺎ اﭘﻠﺘﻬﺎﻳﯽ اﺱﺖ ﮐﻪ در ﮐﺎوﺷﮕﺮهﺎی وب ﻗﺎﺑﻞ‬
                                                                  ‫ﻣﺸﺎهﺪﻩ هﺴﺘﻨﺪ .‬
‫اﭘﻠﺘﻬﺎ ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ هﺴﺘﻨﺪ ﮐﻪ ﺟﺰﻳﯽ از ﺹﻔﺤﺎت وب ﻣﺤﺴﻮب ﻣﯽ ﺷﻮﻥﺪ . ﺗﻘﺮﻳﺒﺎ هﺮ‬
    ‫ً‬
                                                ‫ﮐﺎری ﺑﺎ اﭘﻠﺖ هﺎ اﻣﮑﺎﻥﭙﺬﻳﺮ اﺱﺖ .‬
‫ﻗﺪرت ﺟﺎوا در ﺱﺎدﮔﯽ و اﺱﺘﻘﻼل از ﺁن ﺑﺴﺘﺮ ﺱﺨﺖ اﻓﺰاری ) چﻪ در ﻓﺎﻳﻞ ﻣﻨﺒﻊ ﺑﺮﻥﺎﻣﻪ‬
‫و چﻪ در ﮐﺪ ﺑﺎﻳﻨﺮی ﺁن ( اﺱﺖ . ﺑﺎ ﺟﺎوا ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ هﻢ ﻥﻮﺷﺖ ﮐﻪ ﺑﺪون‬
‫ﮐﺎوﺷﮕﺮهﺎی وب ﻗﺎﺑﻞ اﺟﺮا ﺑﺎﺷﻨﺪ . اﭘﻠﺖ هﺎی ﺟﺎوا را ﻓﻘﻂ در ﻓﺎﻳﻠﻬﺎی ‪ HTML‬ﻣﯽ‬
                                                    ‫ﺗﻮان ﻣﻮرد اﺱﺘﻔﺎدﻩ ﻗﺮار داد .‬
 ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا و ﺟﺎوا )‪: (Object Oriented Programming – OOP‬‬
‫ﻳﮑﯽ از ﺑﺰرﮔﺘﺮﻳﻦ اﻳﺪﻩ هﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ در دو دهﻪ اﺧﻴﺮ اﺱﺖ ﮐﻪ ﻥﻴﺎز ﺑﻪ ﺗﺴﻠﻂ ﮐﺎﻣﻞ‬
                                                                           ‫دارد .‬
                                            ‫ﻣﻔﺎهﻴﻢ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا :‬
‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا ﻗﺼﺪ دارد ﻣﺪﻟﯽ از دﻥﻴﺎی واﻗﻌﯽ را وارد ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ‬
                         ‫ﮐﺎﻣﭙﻴﻮﺗﺮ ﮐﻨﺪ دﻥﻴﺎی اﻃﺮاف ﻣﺎ از اﺷﻴﺎء ﺱﺎﺧﺘﻪ ﺷﺪﻩ اﺱﺖ .‬
                                  ‫اﺷﻴﺎء )‪ (Objects‬و ﮐﻼﺱﻬﺎ )‪: (Classes‬‬
‫ﺷﻴﯽ ء ﮐﻠﻴﺪی ﺗﺮﻳﻦ ﻣﻔﻬﻮم ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ﮔﺮا اﺱﺖ هﺮ ﺷﯽ ء ﻳﮏ ﺣﺎﻟﺖ و رﻓﺘﺎر‬
‫دارد و ﺑﺮﻥﺎﻣﻪ ﻋﺒﺎرت اﺱﺖ از ﺑﺮ هﻢ ﮐﻨﺶ ﺑﻴﻦ اﺷﻴﺎء . ﺣﺎﻟﺖ ﻳﮏ ﺷﯽ ء ﻋﺒﺎرت اﺱﺖ‬
‫از ﻣﺘﻐﻴﻴﺮهﺎی ﻋﻨﺎﺹﺮ دادﻩ ای ﺷﻴﯽء و ﻣﻘﺪار ﺁﻥﻬﺎ . رﻓﺘﺎر ﻳﮏ ﺷﯽ ء را ﻣﺘﺪهﺎی ﺁن‬
                                                                   ‫ﺗﻌﻴﻴﻦ ﻣﯽ ﮐﻨﺪ .‬
                       ‫ﺷﯽء در واﻗﻊ ﻣﻘﺪاری ﮐﺪ اﺱﺖ ﮐﻪ ﮐﺎر ﺧﺎﺹﻴﺘﯽ اﻥﺠﺎم ﻣﯽ دهﺪ .‬
‫هﺮ ﺷﯽء ﮐﭙﺴﻮﻟﯽ اﺱﺖ از ﻣﻘﺪاری ﻣﺘﻐﻴﻴﺮ و ﮐﺪ ﮐﻪ ﮐﺎر ﻥﮕﻬﺪاری و ﺑﻪ روز در ﺁوردن‬
‫ﺁﻥﻬﺎ را ﺱﺎدﻩ ﻣﯽ ﮐﻨﺪ . ﻣﻌﻤﻮﻻ درون ﻳﮏ ﺷﯽء از دﺱﺘﺮس دﻥﻴﺎی ﺧﺎرج ﺑﻪ دور اﺱﺖ و‬
                                                     ‫ً‬
‫ﺑﺮای ﮐﺎر ﺑﺎ ﺁن ﺑﺎﻳﺪ از ارﺱﺎل ﭘﻴﺎم اﺱﺘﻔﺎدﻩ ﮐﺮد . ﻣﺰﻳﺘﺶ ﺁن اﺱﺖ ﮐﻪ ﮐﺎرﺑﺮ ﺑﺮای ﮐﺎر ﺑﺎ‬
‫ﺁن هﻴﭻ ﻥﻴﺎزی ﺑﻪ داﻥﺴﺘﻦ ﻣﮑﺎﻥﻴﺰم هﺎی دروﻥﯽ ﺁن ﻥﺪارد و ﻓﻘﻂ ﺑﺎﻳﺪ ﺱﺎﺧﺘﺎر ﭘﻴﺎم هﺎ را‬
‫ﺑﺪاﻥﺪ . ﻣﻌﻤﻮﻻ ﺱﺎﺧﺘﺎر ﭘﻴﺎم هﺎ در اﺷﻴﺎء ﻣﺨﺘﻠﻒ ﻳﮑﺴﺎن اﺱﺖ . در دﻥﻴﺎی واﻗﻌﯽ هﻢ‬
                                                                   ‫ً‬
‫وﺽﻊ ﺑﻪ هﻤﻴﻦ ﻣﻨﻮال اﺱﺖ ﻣﺜﻼ ﺑﺮای اﺱﺘﻔﺎدﻩ از ﻳﮏ ﺗﻠﻮﻳﺰﻳﻮن ﺷﻤﺎ هﻴﭻ ﻥﻴﺎزی ﺑﻪ‬
                                                 ‫ً‬


‫12‬
‫ﺁﺷﻨﺎﻳﯽ ﺑﺎ ﭘﻴﭽﻴﺪﮔﻴﻬﺎی درون ﺁن ﻥﺪارﻳﺪ ﻓﻘﻂ ﮐﺎﻓﯽ اﺱﺖ ﺑﺪاﻥﻴﺪ ﮐﻪ ﺑﺎﻳﺪ ﺁن را ﺑﻪ ﺑﺮق زدﻩ‬
‫و روﺷﻦ ﮐﻨﻴﺪ و ﻳﮏ ﮐﺎﻥﺎل را اﻥﺘﺨﺎب ﮐﻨﻴﺪ . ﮐﻼس در واﻗﻊ اﻟﮕﻮﻳﯽ اﺱﺖ ﺑﺮای اﻳﺠﺎد‬
  ‫ﺷﯽء . در واﺱﻂ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺟﺎوا )‪ (java API‬چﻨﺪﻳﻦ ﮐﻼس ﻣﺨﺘﻠﻒ وﺟﻮد دارد .‬
                ‫چﻨﺪﻳﻦ ﮐﻼس ﺑﺎ هﻢ ﻳﮏ ﮐﺘﺎﺑﺨﺎﻥﻪ ﮐﻼس ‪ Class Library‬ﻣﯽ ﺱﺎزﻥﺪ .‬
         ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺟﺎوا اﺹﻮﻻ چﻴﺰی ﻥﻴﺴﺖ ﺟﺰ ﻃﺮاﺣﯽ و ﭘﻴﺎدﻩ ﺱﺎزی ﮐﻼس هﺎ .‬
                                                        ‫ً‬

                                            ‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺷﯽء ﮔﺮا در ﺟﺎوا :‬

‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽء )‪ (OOP‬ﻳﮑﯽ از ﺑﺰرﮔﺘﺮﻳﻦ اﻳﺪﻩ هﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ در دو دهﻪ‬
‫اﺧﻴﺮ اﺱﺖ ، اﻣﺎ ﺗﺴﻠﻂ ﮐﺎﻣﻞ ﺑﺮ اﻳﻦ اﻳﺪﻩ ﺑﻪ ﺱﺎﻟﻬﺎ زﻣﺎن و ﻣﻤﺎرﺱﺖ ﻥﻴﺎز دارد . ﺑﺮﻥﺎﻣﻪ‬
‫ﻥﻮﻳﺴﯽ ﺷﯽء در واﻗﻊ ﭘﻴﻮﻥﺪ دﻥﻴﺎی واﻗﻌﯽ ﺑﺎ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ اﺱﺖ . در اﻳﻨﺠﺎ ﺑﺎ‬
‫ﻣﻔﺎهﻴﻢ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽء ﮔﺮا در ﺟﺎوا ، و ارﺗﺒﺎط اﻳﻦ ﻣﻔﺎهﻴﻢ ﺑﺎ ﺱﺎﺧﺘﺎر ﺑﺮﻥﺎﻣﻪ هﺎ‬
                                                                   ‫ﺁﺷﻨﺎ ﻣﯽ ﺷﻮﻳﻢ :‬
                            ‫• ﺷﯽء و ﮐﻼس چﻴﺴﺖ و راﺑﻄﻪ ﺁﻥﻬﺎ چﮕﻮﻥﻪ اﺱﺖ .‬
                       ‫• ﻳﮏ ﺷﯽء ﻳﺎ ﮐﻼس دو ﺟﺰء ﻣﻬﻢ دارد : رﻓﺘﺎر و ﺣﺎﻟﺖ .‬
                                    ‫• وراﺛﺖ و ﻥﻘﺶ ﺁن در ﻃﺮاﺣﯽ ﺑﺮﻥﺎﻣﻪ هﺎ .‬
                                                ‫• ﺑﺴﺘﻪ هﺎ و واﺱﻂ هﺎ در ﺟﺎوا .‬
                                                              ‫اﻳﺠﺎد ﻳﮏ ﮐﻼس :‬
‫در اﻳﻦ ﻗﺴﻤﺖ ﻳﮏ ﻣﺜﺎل ﻋﻤﻠﯽ ﺧﻮاهﻴﻢ ﺁورد . در اﻳﻦ ﻣﺜﺎل ﻳﮏ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ را ﺷﺒﻴﻪ‬
‫ﺱﺎزی ﻣﯽ ﮐﻨﻴﻢ . ﻳﮏ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ واﻗﻌﯽ دارای ﺣﺎﻟﺖ و رﻓﺘﺎر ﺧﺎص ﺧﻮد اﺱﺖ .‬
‫ﺣﺎﻟﺖ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ در واﻗﻊ هﻤﺎن ﺧﻮاص ﺁن ) ﻣﺎﻥﻨﺪ رﻥﮓ ، ﻣﺪل ، ﻥﻮع و ... (‬
‫اﺱﺖ . ﻣﺠﻤﻮع اﻳﻦ ﺧﻮاص ﻳﮏ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ ﺧﺎص را ﻣﺸﺨﺺ ﺧﻮاهﻨﺪ ﮐﺮد ﮐﻪ از‬
‫ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ هﺎی دﻳﮕﺮ ﻗﺎﺑﻞ ﺗﻤﻴﺰ اﺱﺖ . هﺮ ﺷﯽء وهﻠﻪ اﻳﺴﺖ از ﻳﮏ ﮐﻼس . ﮐﻼس‬
‫ﻣﻮﺟﻮدی ﻗﺎﺑﻞ ﻟﻤﺲ ﻥﻴﺴﺖ ، در ﺣﺎﻟﻴﮑﻪ ﺷﯽء ﻣﻮﺟﻮدی اﺱﺖ ﻗﺎﺑﻞ ﻟﻤﺲ ﮐﻪ ﺑﻪ ﮐﻼس‬
‫ﺧﻮد ﻣﻮﺟﻮدﻳﺖ دادﻩ اﺱﺖ . ﻣﺜﻼ ، اﻥﺴﺎن ﻳﮏ ﮐﻼس اﺱﺖ در ﺣﺎﻟﻴﮑﻪ ﺷﻤﺎ ﻥﻤﻮﻥﻪ ای‬
                                                   ‫ً‬
‫هﺴﺘﻴﺪ از ﮐﻼس اﻥﺴﺎن ، ﺷﻤﺎ ﻣﻮﺟﻮدﻳﺖ دارﻳﺪ در ﺣﺎﻟﻴﮑﻪ چﻴﺰی ﺑﻨﺎم اﻥﺴﺎن وﺟﻮد‬
      ‫ﺧﺎرﺟﯽ ﻥﺪارد، ﺑﻠﮑﻪ در اﺷﻴﺎء ﺧﺎص ) ﻣﻦ ، ﺷﻤﺎ ، دﻳﮕﺮان ( ﻣﻮﺟﻮدﻳﺖ ﻣﯽ ﻳﺎﺑﺪ .‬
‫ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ ﻣﺎ دارای رﻓﺘﺎرهﺎﻳﯽ هﻢ هﺴﺖ ، رﻓﺘﺎرهﺎﻳﯽ ﻣﺎﻥﻨﺪ روﺷﻦ ﺷﺪن ، ﺧﺎﻣﻮش‬
                           ‫ﺷﺪن ، ﺗﻌﻮﻳﺾ دﻥﺪﻩ ، ﺱﺮﻋﺖ ﮔﺮﻓﺘﻦ ، ﺗﺮﻣﺰ ﮐﺮدن و ﻏﻴﺮﻩ .‬
             ‫ادﻳﺘﻮر ﺧﻮد را اﺟﺮا ﮐﻨﻴﺪ و ﮐﻼس ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ را ﻣﺎﻥﻨﺪ ذﻳﻞ ﺗﻌﺮﻳﻒ ﮐﻨﻴﺪ :‬

‫{ ‪Class Motorcycle‬‬
‫}‬



‫22‬
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos
Aktioos

More Related Content

Similar to Aktioos

Similar to Aktioos (13)

Rahnamaye sakhte weblog
Rahnamaye sakhte weblogRahnamaye sakhte weblog
Rahnamaye sakhte weblog
 
Repository pattern
Repository patternRepository pattern
Repository pattern
 
ABOUT INDUSTRY 4.0
ABOUT INDUSTRY 4.0ABOUT INDUSTRY 4.0
ABOUT INDUSTRY 4.0
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
About Expert Cms
About Expert CmsAbout Expert Cms
About Expert Cms
 
Faraz help
Faraz helpFaraz help
Faraz help
 
Learn Government Cms
Learn Government CmsLearn Government Cms
Learn Government Cms
 
ارائه ابزار.pptx
ارائه ابزار.pptxارائه ابزار.pptx
ارائه ابزار.pptx
 
Viflow farsi rev04
Viflow farsi rev04Viflow farsi rev04
Viflow farsi rev04
 
Presentation1
Presentation1Presentation1
Presentation1
 
Ddos dos
Ddos dosDdos dos
Ddos dos
 
vb.net
vb.netvb.net
vb.net
 
Partition in oracle mysql |Mariadb
Partition in oracle mysql |MariadbPartition in oracle mysql |Mariadb
Partition in oracle mysql |Mariadb
 

Aktioos

  • 1. ‫ﺑﻨﺎم ﻳﮕﺎﻧﻪ ﺧﺎﻟﻖ هﺴﺘﯽ ﺑﺨﺶ‬ ‫ﻓﺼﻞ اول –‬ ‫ﺁﺷﻨﺎﻳﯽ ﺑﺎ ‪Activex‬‬ ‫ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬ﻳﮑﯽ از ﻗﻮﻳﺘﺮﻳﻦ اﺑﺰارهﺎﻳﻴﺴﺖ ﮐﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن وﻳﻨﺪوز در‬ ‫اﺧﺘﻴﺎر دارﻥﺪ . ﺗﻘﺮﻳﺒﺎ هﺮ ﺑﺮﻥﺎﻣﻪ ای ﮐﻪ ﺑﻨﻮﻳﺴﻨﺪ از ‪ Activex‬اﺱﺘﻔﺎدﻩ ﺧﻮاهﻨﺪ ﮐﺮد . در‬ ‫اﻳﻦ ﻓﺼﻞ ﺑﺎ ﺱﺮ ﻓﺼﻞ ذﻳﻞ ﺁﺷﻨﺎ ﺧﻮاهﻴﻢ ﺷﺪ :‬ ‫- اهﻤﻴﺖ ﻣﺪول هﺎی ﻥﺮم اﻓﺰاری‬ ‫- ﺗﺎرﻳﺨﭽﻪ و اﺹﻄﻼﺣﺎت ‪Activex‬‬ ‫- درک ﻣﻔﻬﻮم ﺟﺎوا و ﮐﻨﺘﺮل ‪Activex‬‬ ‫- ﻣﻄﺎﻟﺒﯽ درﺑﺎرﻩ اﻣﻨﻴﺖ و ﺗﻮزﻳﻊ ﮐﻨﺘﺮل هﺎی ‪Activex‬‬ ‫اﻧﻘﻼب ﻣﺪول هﺎی ﻧﺮم اﻓﺰاری :‬ ‫هﻤﺎﻥﻨﺪ هﺮ ﺹﻨﻌﺖ دﻳﮕﺮی ، ﮐﺎرﺁﻳﯽ ﻳﮑﯽ از دﻏﺪﻏﻪ هﺎی اﺹﻠﯽ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن اﺱﺖ و‬ ‫ﻳﮑﯽ از ﺟﻨﺒﻪ هﺎی ﻣﻬﻢ ﮐﺎرﺁﻳﯽ اﺟﺘﻨﺎب از دوﺑﺎرﻩ ﮐﺎری اﺱﺖ . اﮔﺮ ﮐﺪی ﻥﻮﺷﺘﻪ اﻳﺪ ﮐﻪ‬ ‫ﮐﺎر ﺧﺎﺹﯽ را اﻥﺠﺎم ﻣﯽ دهﺪ ، چﺮا ﺑﺎﻳﺪ دﻓﻌﻪ ﺑﻌﺪ هﻤﺎن ﮐﺪ را دوﺑﺎرﻩ ﺑﻨﻮﻳﺴﻴﺪ ؟‬ ‫اوﻟﻴﻦ ﮔﺎم در راﻩ اﺱﺘﻔﺎدﻩ ﻣﺠﺪد از ﮐﺪهﺎ ، ﻣﻔﻬﻮم زﻳﺮ ﻣﺠﻤﻮﻋﻪ ﻳﺎ روال ‪Procedure‬‬ ‫اﺱﺖ . ﮐﺪی را ﻳﮑﺒﺎر ﻣﯽ ﻥﻮﻳﺴﻴﺪ و از ﺁن ﺑﻪ ﺑﻌﺪ در هﺮ ﺟﺎی ﺑﺮﻥﺎﻣﻪ ﮐﻪ ﻻزم ﺑﻮد ﻓﻘﻂ‬ ‫ﮐﺎﻓﯽ اﺱﺖ ﺁﻥﺮا اﺣﻀﺎر ‪ Call‬ﮐﻨﻴﺪ . ﻗﺮار دادن روال هﺎی ﮐﻠﯽ در ﻳﮏ ﻣﺪول ﺑﺮﻥﺎﻣﻪ‬ ‫ﻥﻮﻳﺴﯽ ﻗﺪﻣﯽ ﺑﻪ ﭘﻴﺶ ﺑﻮد . ﺑﺎ اﻳﻦ ﺗﻤﻬﻴﺪ ﻣﯽ ﺗﻮان از ﺁن روال هﺎ در ﺑﺮﻥﺎﻣﻪ هﺎی ﻣﺨﺘﻠﻒ‬ ‫اﺱﺘﻔﺎدﻩ ﮐﺮد .‬ ‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺷﯽ ﮔﺮا :‬ ‫ﺑﻪ ﻣﻮازات رﺷﺪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﺪوﻻر ، ﺗﮑﻨﻮﻟﻮژی دﻳﮕﺮی در زﻣﻴﻨﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ‬ ‫اﺧﺘﺮاع ﺷﺪ و ﺗﻮﺱﻌﻪ ﻳﺎﻓﺖ .‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ﮔﺮا ﻳﺎ ‪OOP‬‬ ‫) ‪ (Object – Oriented Programming‬ﻣﺤﺮک ﺗﻮﺱﻌﻪ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی رﺷﺪ و‬ ‫ﭘﻴﭽﻴﺪﮔﯽ روز اﻓﺰون ﺑﺮﻥﺎﻣﻪ هﺎ و ﻣﺸﮑﻼﺗﯽ ﺑﻮد ﮐﻪ ﺑﻪ ﺗﻴﻎ ﺁن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن را درﮔﻴﺮ‬ ‫ﺧﻮد ﮐﺮدﻩ ﺑﻮد . ﻣﻬﻤﺘﺮﻳﻦ ﻣﻨﺒﻊ اﻳﻦ ﻣﺸﮑﻼت ﺑﺮ هﻢ ﮐﻨﺶ ﻏﻴﺮ ﻗﺎﺑﻞ ﭘﻴﺶ ﺑﻴﻨﯽ ﻗﺴﻤﺘﻬﺎی‬ ‫ﻣﺨﺘﻠﻒ ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﺑﺎ ﻳﮑﺪﻳﮕﺮ ﺑﻮد . چﻮن اﻳﻦ ﻗﺴﻤﺘﻬﺎ ﻣﺎﻥﻨﺪ داﻥﻪ هﺎی ﻳﮏ زﻥﺠﻴﺮ در هﻢ‬ ‫ﺑﺎﻓﺘﻪ ﺷﺪﻩ ﺑﻮﻥﺪ و هﺮ ﺗﻐﻴﻴﺮی در ﻳﮏ ﻗﺴﻤﺖ ﺑﻪ راﺣﺘﯽ ﺱﺎﻳﺮ ﻗﺴﻤﺘﻬﺎ را ﻣﺘﺎﺛﺮ ﻣﯽ ﮐﺮد .‬ ‫را ﻩ ﺣﻞ اﻳﻦ ﻣﺸﮑﻞ ﺁن ﺑﻮد ﮐﻪ هﺮ ﻗﺴﻤﺖ ﺑﺮﻥﺎﻣﻪ در ﻳﮏ ﺑﺴﺘﻪ ﺑﻨﺎم ﺷﯽ ‪، Object‬‬ ‫ﮐﭙﺴﻮﻟﻪ ﻳﺎ ‪ Encapsulation‬ﺷﻮد . ﺱﺎز و ﮐﺎر دروﻥﯽ هﺮ ﺷﯽ ﻣﻄﻠﻘﺎ از دﻳﺪ دﻥﻴﺎی‬ ‫ﺧﺎرج ﻣﺨﻔﯽ اﺱﺖ و ﺁﻥﻬﺎ ﻥﻤﯽ ﺗﻮاﻥﻨﺪ ﺗﺎﺛﻴﺮی ﺑﺮ ﻋﻤﻠﮑﺮد وی ﺑﮕﺬارﻥﺪ . اﻟﺒﺘﻪ ﻳﮏ ﺷﯽ‬ ‫ﻥﻤﯽ ﺗﻮاﻥﺪ ﺑﮑﻠﯽ از دﻥﻴﺎی اﻃﺮاف ﺧﻮد اﻳﺰوﻟﻪ ﺷﻮد چﻮن ﺑﺪﻳﻦ ﺗﺮﺗﻴﺐ دﻳﮕﺮ چﻴﺰ ﺑﯽ‬ ‫ﻓﺎﻳﺪﻩ ای ﺑﻴﺶ ﻥﺨﻮاهﺪ ﺑﻮد ! ﺑﻪ هﻤﻴﻦ دﻟﻴﻞ ﺑﺮای ارﺗﺒﺎط ﺑﺎ دﻳﮕﺮ ﻗﺴﻤﺘﻬﺎی ﺑﺮﻥﺎﻣﻪ ، هﺮ‬ ‫1‬
  • 2. ‫ﺷﯽ از وﺱﻴﻠﻪ ای ﺑﻨﺎم واﺱﻂ ﻳﺎ ‪ Interface‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﺪ . واﺱﻂ هﺮ ﺷﯽ دو ﺑﺨﺶ‬ ‫دارد : ﺧﻮاص ) دادﻩ هﺎ ( و ﻣﺘﺪهﺎ ) ﮐﺪهﺎ ( ی ﺁن .‬ ‫ﺕﺎرﻳﺨﭽﻪ ﮐﻮﺕﺎهﯽ از ‪: Axtivex‬‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﺪوﻻر ﺱﺎﻟﻬﺎ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن را ﺑﻪ ﺧﻮد ﻣﺸﻐﻮل ﮐﺮدﻩ ﺑﻮد و در واﻗﻊ‬ ‫ﻳﮑﯽ از ﻣﺤﺮﮐﻬﺎی اﺹﻠﯽ ﺗﻮﺱﻌﻪ ﺱﻴﺴﺘﻢ ﻋﺎﻣﻞ وﻳﻨﺪوز هﻢ هﻤﻴﻦ اﻳﺪﻩ ﮐﺪهﺎی ﻗﺎﺑﻞ‬ ‫اﺷﺘﺮاک و ﻗﺎﺑﻞ اﺱﺘﻔﺎدﻩ ﻣﺠﺪد ﺑﻮدﻩ اﺱﺖ . اوﻟﻴﻦ ﮔﺎم در راﻩ ﭘﻴﺎدﻩ ﺱﺎزی ﻋﻨﺎﺹﺮ ﻣﺪوﻻر‬ ‫ﺗﮑﻨﻮﻟﻮژی ‪ OLE‬ﻳﺎ ‪ Object Linking and Embedding‬ﺑﻮد . هﺪف اوﻟﻴﻪ ‪OLE‬‬ ‫اﻳﺠﺎد ﺱﻨﺪهﺎی ﻣﺮﮐﺐ ‪ Compound Documents‬ﺑﺎ اﺱﺘﻔﺎدﻩ از ﺑﺮﻥﺎﻣﻪ هﺎی ﻣﺨﺘﻠﻒ‬ ‫ﺑﻮد .‬ ‫ﺱﻨﺪی ﮐﻪ ﻣﻘﺪاری ﻣﺘﻦ و ﻣﻘﺪاری ﻥﻤﻮدار دارد ، و هﺮ ﮐﺪام ﺁﻥﻬﺎ ﺑﺎ ﻥﺮم اﻓﺰار ﺧﺎص ﺧﻮد‬ ‫اﻳﺠﺎد ﺷﺪﻩ اﻥﺪ ، ﻥﻤﻮﻥﻪ ای از ﻳﮏ ﺱﻨﺪ ﻣﺮﮐﺐ اﺱﺖ . وﻗﺘﯽ ﺑﺎ ﻣﺘﻦ ﮐﺎر ﻣﯽ ﮐﻨﻴﺪ ﻥﺮم‬ ‫اﻓﺰارهﺎ واژﻩ ﭘﺮداز ﮐﻨﺘﺮل را ﺑﺪﺱﺖ ﻣﯽ ﮔﻴﺮد و وﻗﺘﯽ ﺑﺎ ﻥﻤﻮدارهﺎ ﮐﺎر ﻣﯽ ﮐﻨﻴﺪ ﻥﺮم‬ ‫اﻓﺰار ﺗﺮﺱﻴﻤﯽ ﻣﺴﺌﻮﻟﻴﺖ را ﺑﻪ ﻋﻬﺪﻩ ﻣﯽ ﮔﻴﺮد . ‪ OLE‬ﺑﺎ وﺟﻮد ﮐﻨﺪی و ﻣﺸﮑﻼت دﻳﮕﺮ‬ ‫ﻣﺴﻠﻤﺎ ﻗﺪﻣﯽ ﺑﻪ ﭘﻴﺶ ﺑﻮد .‬ ‫ً‬ ‫ﺗﮑﻨﻮﻟﻮژی ‪ OLE‬ﺧﻮد ﺑﺮ ﻳﮏ اﺱﺘﺎﻥﺪارد ﮐﻠﯽ ﺗﺮ ﺑﻨﺎم ‪ COM‬ﻳﺎ ‪Component‬‬ ‫‪ Object Model‬اﺱﺘﻮار اﺱﺖ . ﺑﺰودی ‪ COM‬از ﺱﻨﺪهﺎی ﻣﺮﮐﺐ ﻓﺮاﺗﺮ رﻓﺖ و‬ ‫‪ OLE‬را هﻢ ﺑﺪﻥﺒﺎل ﺧﻮد ﮐﺸﺎﻥﺪ و از ﺁن ﺑﻪ ﺑﻌﺪ ‪ OLE‬اﺹﻄﻼﺣﯽ ﺷﺪ ﺑﺮای هﺮ چﻴﺰی‬ ‫ﮐﻪ از ﺗﮑﻨﻮﻟﻮژی ‪ COM‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﺮد . ﺱﺎﻟﻬﺎ ﺑﻌﺪ ﮐﻪ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺑﻄﻮر ﺟﺪی‬ ‫درﮔﻴﺮ اﻳﻨﺘﺮﻥﺖ ﺷﺪ ، اﺹﻄﻼح ‪ Activex‬هﻢ وارد ادﺑﻴﺎت ﮐﺎﻣﭙﻴﻮﺗﺮی ﺷﺪ . اﺑﺘﺪا اﻳﻦ‬ ‫اﺹﻄﻼح ﻓﻘﻂ در راﺑﻄﻪ ﺑﺎ اﻳﻨﺘﺮﻥﺖ و وب ﺑﻮد اﻣﺎ اوﺽﺎع ﺑﺪﻳﻦ ﻣﻨﻮال ﺑﺎﻗﯽ ﻥﻤﺎﻥﺪ و‬ ‫اﮐﻨﻮن ‪ Activex‬ﺑﻪ ﺁن ﺑﺨﺶ از ﺗﮑﻨﻮﻟﻮژﻳﻬﺎی ‪ COM‬ﮔﻔﺘﻪ ﻣﯽ ﺷﻮد ﮐﻪ در ﺁﻥﻬﺎ ﻳﮏ‬ ‫ﻗﻄﻌﻪ ﻥﺮم اﻓﺰاری اﻣﮑﺎﻥﺎت ﺧﻮد را در اﺧﺘﻴﺎر ﺑﺮﻥﺎﻣﻪ هﺎی دﻳﮕﺮ ﻣﯽ ﮔﺬارد . ﻳﮑﯽ از‬ ‫ادﻋﺎهﺎی ‪ ) Activex‬ﮐﻪ ﺑﻮﻳﮋﻩ ﺑﻪ اﻳﻨﺘﺮﻥﺖ ﻣﺮﺑﻮط ﻣﯽ ﺷﻮد ( ﭘﺸﺘﻴﺒﺎﻥﯽ از ﻥﺮم‬ ‫اﻓﺰارهﺎی ﺗﻮزﻳﻊ ﺷﺪﻩ ‪ Distributed‬اﺱﺖ ، و اﻳﻦ ﻳﻌﻨﯽ ، ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺑﻪ‬ ‫ﺷﻤﺎ ﺱﺮوﻳﺲ ﺧﻮاهﻨﺪ داد ، ﺣﺘﯽ اﮔﺮ در ﮐﺎﻣﭙﻴﻮﺗﺮی دﻳﮕﺮ ) و هﺰاران ﮐﻴﻠﻮﻣﺘﺮ‬ ‫دورﺗﺮ ( ﺑﺎﺷﻨﺪ . اﻣﺎ چﻪ ﺑﺮ ﺱﺮ ‪ OLE‬ﺁﻣﺪ ؟ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی دوﺑﺎرﻩ ﺑﻪ وﺽﻌﻴﺖ اوﻟﻴﻪ‬ ‫اش ﺑﺮﮔﺸﺖ و اﮐﻨﻮن ﻓﻘﻂ ﺑﺎ ﺱﻨﺪهﺎی ﻣﺮﮐﺐ ﺱﺮوﮐﺎر دارد .‬ ‫ﻧﻘﺎط ﺿﻌﻒ و ﻗﻮت ‪: Activex‬‬ ‫ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬ﺑﻬﺘﺮﻳﻦ وﺱﻴﻠﻪ ﺑﺮای اﻳﺠﺎد ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل در وب اﺱﺖ . اﻟﺒﺘﻪ‬ ‫ﺑﺮﺧﯽ ﺑﺎ اﻳﻦ ﻋﻘﻴﺪﻩ ﻣﺨﺎﻟﻔﻨﺪ و ﺑﺎﻳﺪ ﮔﻔﺖ ﮐﻪ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی ﻣﺴﻠﻤﺎ ﺗﻨﻬﺎ اﺑﺰار ﻣﺤﺘﻮﻳﺎت‬ ‫ﻓﻌﺎل وب ﻥﻴﺴﺖ . ﭘﺲ اﺟﺎزﻩ دهﻴﺪ ﻥﮕﺎهﯽ ﺑﻪ ﺟﻨﺒﻪ هﺎی ﻣﺜﺒﺖ و ﻣﻨﻔﯽ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی‬ ‫ﺑﻴﻨﺪازﻳﻢ .‬ ‫2‬
  • 3. ‫ﻧﻘﺎط ﻗﻮت :‬ ‫ﻳﮑﯽ از ﻣﻬﻤﺘﺮﻳﻦ ﻥﻘﺎط ﻗﻮت ‪ Activex‬ﻗﺪرت ﺁن اﺱﺖ . ﻳﮏ ﮐﻨﺘﺮل ‪ Activex‬ﺗﻘﺮﻳﺒﺎ از‬ ‫ً‬ ‫ﻋﻬﺪﻩ هﺮ ﮐﺎری ﮐﻪ ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻣﻌﻤﻮﻟﯽ ﺑﺘﻮاﻥﺪ اﻥﺠﺎم دهﺪ ، ﺑﺮﻣﯽ ﺁﻳﺪ . از دﻳﺪﮔﺎﻩ ﻳﮏ‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺲ وب اﻳﻦ ﺑﻬﺘﺮﻳﻦ ﺟﻨﺒﻪ ﻳﮏ اﺑﺰار ﺧﻠﻖ ﻣﺤﺘﻮﻳﺎت دﻳﻨﺎﻣﻴﮏ اﺱﺖ . دﻳﮕﺮ‬ ‫اﺑﺰارهﺎی ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ، ﻣﺎﻥﻨﺪ ﺟﺎوا و ‪ ، CGI‬در اﻳﻦ زﻣﻴﻨﻪ ﺑﺴﻴﺎر ﻣﺤﺪودﺗﺮ از‬ ‫‪ Activex‬هﺴﺘﻨﺪ . ﻥﮑﺘﻪ ﻣﺜﺒﺖ دﻳﮕﺮ ، ﺣﺪاﻗﻞ ﺑﺮای ﺑﺴﻴﺎری از اﻓﺮاد ، اﻣﮑﺎن اﺱﺘﻔﺎدﻩ‬ ‫از ﻣﻬﺎرﺗﻬﺎی ﻋﺎدی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ در ﺧﻠﻖ ﮐﻨﺘﺮل هﺎی ‪ Activex‬اﺱﺖ .‬ ‫روش اﻥﺠﺎم ﺑﺎرﮔﻴﺮی هﺎی وب هﻢ ﻳﮑﯽ از ﻣﺰاﻳﺎی ‪ Activex‬اﺱﺖ . وﻗﺘﯽ ﺑﻪ ﻳﮏ‬ ‫ﺹﻔﺤﻪ وب ﮐﻪ ﻋﻨﺎﺹﺮ ‪ Activex‬دارد ﻣﯽ روﻳﺪ ، وﻗﺎﻳﻊ ذﻳﻞ اﺗﻔﺎق ﻣﯽ اﻓﺘﺪ :‬ ‫١- اﻃﻼﻋﺎت ﻣﺨﺘﺼﺮی درﺑﺎرﻩ ﮐﻨﺘﺮل و ﺷﻤﺎرﻩ وﻳﺮاﻳﺶ ﺁن ﺑﺎر ﻣﯽ ﺷﻮد .‬ ‫٢- ﮐﺎوﺷﮕﺮ ﺑﺮرﺱﯽ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﺁﻳﺎ اﻳﻦ ﻥﺮم اﻓﺰار در ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻥﺼﺐ ﺷﺪﻩ ﻳﺎ‬ ‫ﺧﻴﺮ .‬ ‫٣- اﮔﺮ اﻳﻦ ﻥﺮم اﻓﺰار در ﺱﻴﺴﺘﻢ ﺷﻤﺎ وﺟﻮد ﻥﺪاﺷﺖ ) ﻳﺎ اﻳﻨﮑﻪ وﻳﺮاﻳﺶ ﺁن ﻗﺪﻳﻤﯽ ﺗﺮ‬ ‫ﺑﻮد ( ، ﮐﺎوﺷﮕﺮ ﺁﻥﺮا ﺑﺎر ﮐﺮدﻩ و ﺱﭙﺲ ﻥﺼﺐ و اﺟﺮا ﺧﻮاهﺪ ﮐﺮد .‬ ‫۴- اﮔﺮ ﻥﺮم اﻓﺰار در ﺱﻴﺴﺘﻢ ﺷﻤﺎ وﺟﻮد داﺷﺖ ، ﮐﺎوﺷﮕﺮ ﺁﻥﺮا از هﻤﺎن ﺟﺎ اﺟﺮا‬ ‫ﺧﻮاهﺪ ﮐﺮد . ﺣﺘﻤﺎ ﻣﺘﻮﺟﻪ ﻣﺰﻳﺖ اﻳﻦ روش ﺷﺪﻩ اﻳﺪ : هﺮ ﻗﻄﻌﻪ ﻥﺮم اﻓﺰاری ﻓﻘﻂ‬ ‫ﻳﮑﺒﺎر ﺑﺎﻳﺪ ﺑﺎر ﺷﻮد و دﻓﻌﺎت ﺑﻌﺪ دﻳﮕﺮ ﻥﻴﺎزی ﺑﻪ ﺑﺎر ﺷﺪن ﺁن ﻥﺨﻮاهﺪ ﺑﻮد ،‬ ‫ﺑﻨﺎﺑﺮاﻳﻦ ﺹﺮﻓﻪ ﺟﻮﻳﯽ زﻳﺎدی در زﻣﺎن ﻥﻤﺎﻳﺶ ﺁن ﺹﻔﺤﻪ وب ﺧﻮاهﺪ ﺷﺪ . در‬ ‫اﺑﺰارهﺎﻳﯽ ﻣﺎﻥﻨﺪ ﺟﺎوا ، اﻳﻦ ﻗﺒﻴﻞ ﻥﺮم اﻓﺰارهﺎ ﺑﺎﻳﺪ هﺮ دﻓﻌﻪ ﻣﺠﺪدا ﺑﺎر ﺷﻮﻥﺪ و‬ ‫اﻳﻦ اﺟﺮای ﺁﻥﻬﺎ را ﺑﻪ ﻣﺮاﺗﺐ ﮐﻨﺪﺗﺮ ﺧﻮاهﺪ ﮐﺮد .‬ ‫ﻧﻘﺎط ﺿﻌﻒ – هﻴﭻ چﻴﺰ ﮐﺎﻣﻞ ﻧﻴﺴﺖ !‬ ‫ﺷﺎﻳﺪ ﻣﻬﻤﺘﺮﻳﻦ ﺟﻨﺒﻪ ﻣﻨﻔﯽ ‪ Activex‬ﺽﻌﻒ اﻣﻨﻴﺘﯽ ﺁن ﺑﺎﺷﺪ . اﻳﻦ ﺽﻌﻒ ﻇﺎهﺮا ﻳﮑﯽ از‬ ‫ﺗﺒﻌﺎت اﺟﺘﻨﺎب ﻥﺎﭘﺬﻳﺮ ﻗﺪرت و اﻥﻌﻄﺎف ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬اﺱﺖ . ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺲ‬ ‫ﺷﺮور ﻣﯽ ﺗﻮاﻥﺪ ﺑﺮاﺣﺘﯽ ﺑﺎ اﻳﻦ ﺗﮑﻨﻮﻟﻮژی ﻥﺮم اﻓﺰاری ﺑﺴﺎزد ﮐﻪ ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ دﻳﮕﺮان‬ ‫ﺹﺪﻣﻪ ﺑﺰﻥﺪ . ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ اﻳﻦ وﺽﻌﻴﺖ ، ﺁﻳﺎ ﻣﯽ ﺗﻮان هﻨﮕﺎم ﺑﺮﺧﻮرد ﺑﺎ ﮐﻨﺘﺮل هﺎی‬ ‫‪ Activex‬روی اﻳﻨﺘﺮﻥﺖ اﺣﺴﺎس راﺣﺘﯽ ﮐﺮد ؟ ﭘﺎﺱﺦ اﻳﻦ ﺱﺌﻮال ﻣﺜﺒﺖ اﺱﺖ و در اداﻣﻪ‬ ‫ﺗﻮﺽﻴﺢ ﺧﻮاهﻴﻢ داد ﮐﻪ چﮕﻮﻥﻪ ﻣﻴﮑﺮوﺱﺎﻓﺖ اﻗﺪاﻣﺎت اﻣﻨﻴﺘﯽ ﺧﺎص را ﺑﺮای اﻳﻦ‬ ‫ﺗﮑﻨﻮﻟﻮژی ﭘﻴﺎدﻩ ﺱﺎزی ﮐﺮدﻩ اﺱﺖ . ﺑﺎ اﻳﻦ وﺟﻮد هﻤﻮارﻩ اﻳﻦ ﻣﻄﻠﺐ را در ﻥﻈﺮ داﺷﺘﻪ‬ ‫ﺑﺎﺷﻴﺪ ﮐﻪ هﻴﭻ ﺱﺪ اﻣﻨﻴﺘﯽ ذاﺗﺎ ﻥﻔﻮذ ﻥﺎﭘﺬﻳﺮ ﻥﻴﺴﺖ .‬ ‫ً‬ ‫ﻳﮑﯽ دﻳﮕﺮ از ﻥﻘﺎط ﺽﻌﻒ ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬ﺁن اﺱﺖ ﮐﻪ ﻓﻘﻂ ﺑﺮﺧﯽ از‬ ‫ﮐﺎوﺷﮕﺮهﺎی اﻣﺮوزی از ﺁن ﭘﺸﺘﻴﺒﺎﻥﯽ ﻣﯽ ﮐﻨﻨﺪ . اﮔﺮ در ﻳﮏ ﺹﻔﺤﻪ وب ﻥﺮم اﻓﺰارهﺎی‬ ‫‪ Activex‬وﺟﻮد داﺷﺘﻪ ﺑﺎﺷﺪ و ﻓﺮدی ﺑﺎ ﻳﮏ ﮐﺎوﺷﮕﺮ ﮐﻪ از ‪ Activex‬ﭘﺸﺘﻴﺒﺎﻥﯽ ﻥﻤﯽ‬ ‫ﮐﻨﺪ اﻳﻦ ﺹﻔﺤﻪ را ﺑﺎز ﮐﻨﺪ ﻗﺎدر ﺑﻪ اﺱﺘﻔﺎدﻩ از ﻣﺰاﻳﺎی ﺁن ﻥﺨﻮاهﺪ ﺑﻮد . ﺧﻮﺷﺒﺨﺘﺎﻥﻪ اﻳﻦ‬ ‫ﻣﺸﮑﻞ ﺁﻥﭽﻨﺎن ﮐﻪ ﺑﻪ ﻥﻈﺮ ﻣﯽ ﺁﻳﺪ ﺣﺎد ﻥﻴﺴﺖ ، چﻮن دو ﺗﺎ از ﻣﻬﻤﺘﺮﻳﻦ ﮐﺎوﺷﮕﺮهﺎی وب‬ ‫3‬
  • 4. ‫)‪ (Netscape Navigator , Internet Explorer‬از اﻳﻦ ﺗﮑﻨﻮﻟﻮژی ﭘﺸﺘﻴﺒﺎﻥﯽ ﻣﯽ‬ ‫ﮐﻨﻨﺪ ) اوﻟﯽ ﻣﺴﺘﻘﻴﻢ و دوﻣﯽ از ﻃﺮﻳﻖ ﻳﮏ اﻓﺰودﻥﯽ ﻗﺎﺑﻞ ﻥﺼﺐ ( ﺑﻪ هﺮ ﺣﺎل ، وﻗﺘﯽ ﺑﺎ‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﻳﻨﺘﺮﻥﺖ ﺱﺮوﮐﺎر دارﻳﻢ ، اﻳﻦ ﻣﺸﮑﻞ اﺱﺎﺱﺎ وﺟﻮد ﻥﺪارد چﻮن اﻳﻦ ﻣﺎ‬ ‫ً‬ ‫هﺴﺘﻴﻢ ﮐﻪ ﺷﺒﮑﻪ را ﮐﻨﺘﺮل ﻣﯽ ﮐﻨﻴﻢ .‬ ‫ﻣﺸﮑﻞ دﻳﮕﺮ رﻓﺘﺎر ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺁن اﺱﺖ ﮐﻪ ﺗﻤﺎم ﺁﻥﻬﺎ روی ﺱﻴﺴﺘﻢ ﺷﻤﺎ ﺟﺎ‬ ‫ﺧﻮش ﮐﺮدﻩ و ﻓﻀﺎی هﺎرددﻳﺴﮏ را اﺷﻐﺎل ﺧﻮاهﻨﺪ ﮐﺮد . اﻣﺎ ﺑﻨﻈﺮ ﻣﻦ ﻥﮕﺮاﻥﯽ در اﻳﻦ‬ ‫ﻣﻮرد هﻢ ﺑﻴﻬﻮدﻩ اﺱﺖ چﻮن ﻋﻨﺎﺹﺮ ‪ Activex‬ﻣﻌﻤﻮﻻ ﮐﻮچﮑﻨﺪ و چﻨﺪ ﻣﮕﺎﺑﺎﻳﺖ ﺟﺎﻳﯽ‬ ‫ﮐﻪ اﺣﺘﻤﺎﻻ ) ﺹﺪهﺎ ﮐﻨﺘﺮل ‪ ( Activex‬اﺷﻐﺎل ﺧﻮاهﻨﺪ ﮐﺮد در هﺎرد دﻳﺴﮏ هﺎی ﺑﺴﻴﺎر‬ ‫ﺑﺰرگ اﻣﺮوزی ﻥﻤﯽ ﺗﻮاﻥﻨﺪ ﻣﺸﮑﻠﯽ اﻳﺠﺎد ﮐﻨﺪ .‬ ‫وﺿﻌﻴﺖ ﺟﺎوا چﮕﻮﻧﻪ اﺱﺖ ؟‬ ‫ﺟﺎوا ﻳﮑﯽ دﻳﮕﺮ از ﺗﮑﻨﻮﻟﻮژﻳﻬﺎی ﻋﻤﺪﻩ اﻳﺠﺎد ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل در اﻳﻨﺘﺮﻥﺖ اﺱﺖ .‬ ‫اﭘﻠﺖ هﺎی ﺟﺎوا ، ﮐﻪ ﺗﻮﺱﻂ ﮐﺎوﺷﮕﺮ ﺑﺎر و اﺟﺮا ﻣﯽ ﺷﻮﻥﺪ ، دارای ﺑﺴﻴﺎری از ﻗﺎﺑﻠﻴﺖ‬ ‫هﺎی ‪ Activex‬هﺴﺘﻨﺪ ، اﭘﻠﺖ هﺎی ﺟﺎوا ﺑﺮای ﺟﻠﻮﮔﻴﺮی از اﻗﺪاﻣﺎت ﺧﺮاﺑﮑﺎراﻥﻪ ، ﻓﺎﻗﺪ‬ ‫ﺗﻮاﻥﺎﻳﯽ هﺎی ﺧﺎص ) از ﻗﺒﻴﻞ دﺱﺘﺮﺱﯽ ﺑﻪ ﺱﻴﺴﺘﻢ ﻓﺎﻳﻞ ‪ Systemfile‬هﺴﺘﻨﺪ و اﻳﻦ ﺁﻥﻬﺎ‬ ‫را ﺑﺴﻴﺎر ﻣﺤﺪود ﮐﺮدﻩ اﺱﺖ . از ﻥﻈﺮ ﺗﺌﻮری ، اﭘﻠﺖ هﺎی ﺟﺎوا اﻳﻤﻦ هﺴﺘﻨﺪ چﻮن اﺱﺎﺱﺎ‬ ‫ً‬ ‫ﻥﻤﯽ ﺗﻮاﻥﻨﺪ ﮐﺎرهﺎی ﺧﻄﺮﻥﺎک اﻥﺠﺎم دهﻨﺪ !‬ ‫درک ﻣﻔﻬﻮم ﺟﺎوا و ﮐﻨﺘﺮل هﺎی ‪: Activex‬‬ ‫ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ اﺱﺖ ﮐﻪ ﺗﻮﺱﻂ ﺷﺮﮐﺖ ‪ Sun‬ﺑﻪ ﺑﺎزار ﻋﺮﺽﻪ‬ ‫ﺷﺪﻩ اﺱﺖ ﺗﺎ ﺑﻪ وﺱﻴﻠﻪ ﺁن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن ﻗﺎدر ﺑﺎﺷﻨﺪ ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ را ﺑﺮای ﻣﺮورﮔﺮهﺎی‬ ‫وب ﺑﻨﻮﻳﺴﻨﺪ ﮐﻪ ﮐﺎر ﺑﺎ ﺁﻥﻬﺎ ﺑﺮای اﺱﺘﻔﺎدﻩ ﮐﻨﻨﺪﮔﺎن ﺑﺴﻴﺎر راﺣﺖ ﺑﺎﺷﺪ اﺑﺰارهﺎی اﺱﺘﺎﻥﺪارد‬ ‫ﺷﺒﮑﻪ وب ﺑﻪ ﻓﻌﺎﻟﻴﺖ هﺎ و ﻋﻤﻠﮑﺮدهﺎﻳﯽ ﮐﻪ از ﺹﻔﺤﻪ وب ﻗﺎﺑﻞ دﺱﺘﺮﺱﯽ هﺴﺘﻨﺪ ﻣﺤﺪود‬ ‫ﻣﯽ ﺷﻮﻥﺪ . ﺑﺎ ﻳﮏ ﻥﺮم اﻓﺰار ﮐﺎﻣﻞ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﺎﻥﻨﺪ ﺟﺎوا ﻣﺤﺪودﻳﺖ هﺎی ﮐﻤﯽ ﺑﺮای‬ ‫ﻃﺮاﺣﯽ ﻋﻤﻠﮑﺮدهﺎی دورن ﻳﮏ ﺹﻔﺤﻪ وب وﺟﻮد دارد . ﺑﻌﻨﻮان ﻣﺜﺎل ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ‬ ‫ﺑﺎ ﻣﺮاﺟﻌﻪ ﺑﻪ ﺱﺎﻳﺖ اﻳﻨﺘﺮﻥﺘﯽ ‪ www.java.sun.com‬ﺑﺎ ﺑﺮﺧﯽ از ﻥﻤﻮﻥﻪ هﺎی ﮐﺎری‬ ‫ﺟﺎوا ﺁﺷﻨﺎ ﺷﻮﻳﺪ . ﺑﻪ ﺷﮑﻞ زﻳﺮ ﺗﻮﺟﻪ ﮐﻨﻴﺪ :‬ ‫• وﺱﺎﻳﻞ ﺑﺎﻻ و ﭘﺎﻳﻴﻦ ﺑﺮﻥﺪﻩ ﺹﻔﺤﻪ ﺑﻪ هﻤﺮاﻩ ﺹﺪا‬ ‫• ﻃﺮاﺣﯽ ﺗﺼﺎوﻳﺮ ﺱﻪ ﺑﻌﺪی از اﺷﻴﺎء ﻣﺨﺘﻠﻒ ﻥﻈﻴﺮ ﻣﻮﻟﮑﻮل‬ ‫• ﻥﺸﺎﻥﮕﺮهﺎی اﻋﻼن ﻳﮏ ﻣﻄﻠﺐ ﮐﻪ ﺑﻄﻮر ﺧﻮدﮐﺎر ﻋﻮض ﻣﯽ ﺷﻮد‬ ‫4‬
  • 5. ‫ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا را ﺑﺎ ﻥﺎم ‪ Applet‬ﻥﺎﻣﮕﺬاری ﮐﺮدﻩ اﻥﺪ . ‪ Applet‬ﺟﺎوا ﺗﻮﺱﻂ ﺹﻔﺤﺎت‬ ‫وب ﺑﺮ روی ﻳﮏ ﺱﺮوﻳﺲ دهﻨﺪﻩ وب ﻥﮕﻬﺪاری ﻣﯽ ﺷﻮد . وﻗﺘﯽ ﮐﻪ ﺷﻤﺎ ﻳﮏ ﺹﻔﺤﻪ‬ ‫وب را ﮐﻪ دارای ﻗﺴﻤﺖ هﺎﻳﯽ اﺱﺖ ﮐﻪ ﺑﻮﺱﻴﻠﻪ ﺟﺎوا ﺑﺮﻥﺎﻣﻪ رﻳﺰی ﺷﺪﻩ ﻥﮕﺎﻩ ﻣﯽ ﮐﻨﻴﺪ‬ ‫ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا ﺑﺼﻮرت ﺧﻮدﮐﺎر در هﻨﮕﺎم دﻳﺪن ﺁن ﺹﻔﺤﻪ وب از روی اﻳﻨﺘﺮﻥﺖ‬ ‫ﮔﺮﻓﺘﻪ و ﺑﺮ روی ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻗﺮار ﻣﯽ ﮔﻴﺮﻥﺪ . ﺑﺮای اﻥﺠﺎم اﻳﻦ ﮐﺎر ، اﺣﺘﻴﺎﺟﯽ ﻥﻴﺴﺖ‬ ‫ﺷﻤﺎ ﮐﺎری اﻥﺠﺎم دهﻴﺪ .‬ ‫ﻥﺮم اﻓﺰار ‪ IE‬ﺧﻮد ﻣﯽ داﻥﺪ ﮐﻪ چﮕﻮﻥﻪ ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا را اﺟﺮا ﮐﻨﺪ . ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﺟﺎوا‬ ‫ﺑﻪ هﻤﺎن ﺱﺮﻋﺖ ﮐﻪ ﺑﻪ دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﯽ رﺱﺪ ﺑﺮ روی ﺁن ﻥﻴﺰ اﺟﺮا ﻣﯽ ﺷﻮد .‬ ‫ﺑﺮای اﻳﻨﮑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺧﻮد را ﺑﺼﻮرت ﻣﻄﻤﺌﻦ ﻥﮕﻬﺪاری ﮐﻨﻴﺪ ﻥﺮم اﻓﺰار ‪ IE‬ﻣﺪﻟﯽ از‬ ‫اﻣﻨﻴﺖ ﺟﺎوا را ﺑﻪ ﺷﻤﺎ اراﺉﻪ ﻣﯽ ﮐﻨﺪ ﮐﻪ در ﺁن اﺟﺎزﻩ اﺟﺮای ﮐﻠﻴﻪ اﭘﻠﺖ هﺎی ﺟﺎوا دادﻩ‬ ‫ﺷﺪﻩ اﺱﺖ . ﺑﺪون اﻳﻨﮑﻪ در ﻣﻮرد ﺁﺱﻴﺐ دﻳﺪن ﺑﺮﻥﺎﻣﻪ هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮ ﺗﺎن ﻳﺎ ﻥﻔﻮذ ﺑﻪ‬ ‫اﻃﻼﻋﺎت ﺷﺨﺼﯽ ﺧﻮدﺗﺎن ﮐﻪ ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﻮﺟﻮد اﺱﺖ ﻥﮕﺮان ﺑﺎﺷﻴﺪ .‬ ‫‪ Javascript‬ﺱﺎدﻩ ﺗﺮﻳﻦ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ اﺱﺖ ﮐﻪ ﺑﺮای ﻃﺮاﺣﯽ اﺟﺰاء‬ ‫ﺹﻔﺤﻪ وب ﺷﻤﺎ ﺑﮑﺎر ﻣﯽ رود .‬ ‫‪ Javascript‬ﺑﻮﺱﻴﻠﻪ ﺷﺮﮐﺖ ‪ Netscape‬ﺑﻪ ﺑﺎزار ﻋﺮﺽﻪ ﺷﺪﻩ اﺱﺖ . ﺑﺮﺧﻼف ﺟﺎوا‬ ‫اﻳﻦ ﻥﺮم اﻓﺰار ﻥﻤﯽ ﺗﻮاﻥﺪ ﺑﺮای ﻥﻮﺷﺘﻦ ﺑﺮﻥﺎﻣﻪ هﺎ ﻳﺎ ‪ Applet‬ﺑﮑﺎر رود . ‪Javascript‬‬ ‫ﻓﻘﻂ ﺑﺮای اﻋﻤﺎل ﺱﺎدﻩ ﻥﻈﻴﺮ روﺷﻦ ﮐﺮدن ﻳﮏ ﮐﻠﻤﻪ وﻗﺘﯽ ﮐﻪ ﺷﻤﺎ ﺑﺎ ﻣﺎوس ﺑﺮ روی ﺁن‬ ‫ﻣﯽ روﻳﺪ و ﻳﺎ ﺗﻐﻴﻴﺮ ﺷﮑﻞ ﻳﮏ ﻥﺸﺎﻥﻪ ﺑﻪ ﺷﮑﻠﯽ ﮐﻪ ﺷﻤﺎ ﺗﺼﻮر ﮐﻨﻴﺪ ﺁن را ﻓﺸﺎر دادﻩ اﻳﺪ‬ ‫ﺑﮑﺎر ﻣﯽ رود .‬ ‫‪ Internet Explorer‬ﻗﺎدر اﺱﺖ ﮐﻪ ‪ Javascript‬را اﺟﺮا ﮐﻨﺪ و ﺹﻔﺤﺎﺗﯽ را ﮐﻪ در‬ ‫ﺁﻥﻬﺎ از اﺟﺰاﻳﯽ اﺱﺘﻔﺎدﻩ ﺷﺪﻩ ﮐﻪ ﺑﻮﺱﻴﻠﻪ ‪ Javascript‬ﺑﺮای هﻤﮕﺎن ﻗﺎﺑﻞ اﺱﺘﻔﺎدﻩ ﺷﺪﻩ اﺱﺖ‬ ‫ﻣﻤﮑﻦ اﺱﺖ در ﻥﻮﺷﺘﻦ ﺁﻥﻬﺎ ﻣﺸﮑﻼﺗﯽ ﭘﻴﺶ ﺁﻳﺪ و در ﻥﺘﻴﺠﻪ اﻣﮑﺎن دارد ﺷﻤﺎ در هﻨﮕﺎم‬ ‫دﻳﺪن ﺹﻔﺤﺎت وب ﺑﺎ اﺷﮑﺎﻻﺗﯽ در راﺑﻄﻪ ﺑﺎ دﺱﺘﻮرات ‪ Javascript‬ﻣﻮاﺟﻪ ﺷﻮﻳﺪ و‬ ‫ﻋﻤﻠﮑﺮدهﺎی ‪ Javascript‬ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺑﻪ ﺷﮑﻞ درﺱﺘﯽ اﺟﺮا ﻥﺸﻮد .‬ ‫ﺷﺮﮐﺖ ‪ Microsoft‬دوﺱﺖ دارد ﮐﻪ ‪ Activex‬را ﻳﮏ ﻣﺠﻤﻮﻋﻪ از اﻣﮑﺎﻥﺎت ﺟﺪﻳﺪ‬ ‫ﺑﺮای ﺱﺎﺧﺘﻦ ﺹﻔﺤﺎت وب ﻓﻌﺎﻟﺘﺮ ﻣﻌﺮﻓﯽ ﮐﻨﺪ ﺑﺮ ﺧﻼف ﺟﺎوا ‪Microsoft Activex‬‬ ‫ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻥﻴﺴﺖ ﺑﻠﮑﻪ ﻳﮏ ﻣﺠﻤﻮﻋﻪ از ﻗﻄﻌﺎت ﻥﺮم اﻓﺰاری اﺱﺖ ﮐﻪ‬ ‫ﺗﻮﺱﻂ دﻳﮕﺮ ﻥﺮم اﻓﺰارهﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻥﻈﻴﺮ ﺟﺎوا ﻣﯽ ﺗﻮاﻥﺪ اﺱﺘﻔﺎدﻩ ﺷﻮد . ‪Activex‬‬ ‫ﻣﺎﻥﻨﺪ ‪ add-ons‬و ‪ Plug – ins‬ﻗﺎﺑﻠﻴﺖ ﻥﺮم اﻓﺰار ‪ IE‬را ﮔﺴﺘﺮش دادﻩ اﺱﺖ . هﻤﭽﻨﻴﻦ‬ ‫‪ Activex‬ﻗﺎﺑﻠﻴﺖ هﺎی ﻥﺮم اﻓﺰار ﺟﺎوا را ﻥﻴﺰ ﺑﻬﺒﻮد ﺑﺨﺸﻴﺪﻩ اﺱﺖ . ﺑﺮﻥﺎﻣﻪ هﺎی‬ ‫‪ Activex‬ﮐﻨﺘﺮل ﻥﺎﻣﻴﺪﻩ ﻣﯽ ﺷﻮﻥﺪ . ﻣﺎﻥﻨﺪ اﭘﻠﺖ هﺎی ﺟﺎوا ، ﮐﻨﺘﺮل هﺎ از روی اﻳﻨﺘﺮﻥﺖ‬ ‫ﮔﺮﻓﺘﻪ ﻣﯽ ﺷﻮﻥﺪ و ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ اﺟﺮا ﻣﯽ ﮔﺮدد اﻳﻦ ﻋﻤﻞ هﻨﮕﺎﻣﯽ ﺹﻮرت ﻣﯽ‬ ‫ﮔﻴﺮد ﮐﻪ ﺷﻤﺎ ﺹﻔﺤﺎت وﺑﯽ را ﻣﺸﺎهﺪﻩ ﻣﯽ ﮐﻨﻴﺪ ﮐﻪ دارای ﮐﻨﺘﺮل هﺎی ‪ Activex‬هﺴﺘﻨﺪ‬ ‫در ﮔﻮﺷﻪ ﭘﺎﻳﻴﻦ ﺱﻤﺖ چﭗ ﭘﻨﺠﺮﻩ ‪ IE‬ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺟﻤﻠﻪ ) ﻥﺼﺐ ﻗﻄﻌﺎت ﻥﺮم‬ ‫5‬
  • 6. ‫اﻓﺰاری ( وﻗﺘﯽ ﮐﻪ ﮐﻨﺘﺮﻟﻬﺎی ‪ Activex‬در ﺣﺎل اﻥﺘﻘﺎل ﺑﻪ دﺱﺘﮕﺎﻩ ﺷﻤﺎ هﺴﺘﻨﺪ را ﻣﺸﺎهﺪﻩ‬ ‫ﻣﯽ ﮐﻨﻴﺪ .‬ ‫ﻣﻮاﻗﻌﯽ ﻣﻤﮑﻦ اﺱﺖ ﺷﻤﺎ ﺑﺎ ﭘﻨﺠﺮﻩ هﺎﻳﯽ در ﺹﻔﺤﻪ ﻣﺎﻥﻴﺘﻮر ﮐﺎﻣﭙﻴﻮﺗﺮﺗﺎن ﻣﻮاﺟﻪ ﺷﻮﻳﺪ ﮐﻪ‬ ‫ﺑﻮﺱﻴﻠﻪ ﺁﻥﻬﺎ از ﺷﻤﺎ ﺱﺌﻮال ﻣﯽ ﺷﻮد ﮐﻪ ﺁﻳﺎ ﻣﯽ ﺧﻮاهﻴﺪ ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺑﻪ دﺱﺘﮕﺎﻩ‬ ‫ﺷﻤﺎ ﻣﻨﺘﻘﻞ ﺷﻮﻥﺪ ﻳﺎ ﻥﻪ ؟ ﺗﮑﻨﻮﻟﻮژی ‪ Activex‬در ﺣﻘﻴﻘﺖ ﻗﺴﻤﺘﯽ از ﻣﺪﻟﻬﺎی ‪COM‬‬ ‫) ‪ com‬ﻣﺨﻔﻒ ﻣﺪﻟﻬﺎی ﺷﯽ ء ﮔﺮای ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﻣﯽ ﺑﺎﺷﺪ (‬ ‫ﻣﻴﮑﺮوﺱﺎﻓﺖ ﻣﯽ ﺑﺎﺷﺪ .‬ ‫اﻳﻦ ﻣﺪل ﺑﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن اﺟﺎزﻩ ﻣﯽ دهﺪ ﺗﺎ ﻥﺮم اﻓﺰارهﺎﻳﯽ ﺑﺼﻮرت ﻣﺴﺘﻘﻞ ﺑﺮای‬ ‫ﺹﻔﺤﺎت اﻳﻨﺘﺮﻥﺖ ﺧﻮد اﻳﺠﺎد ﮐﻨﻨﺪ و ﻳﺎ ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ را ﻃﺮاﺣﯽ ﮐﻨﻨﺪ ﮐﻪ ﻋﻤﻠﻴﺎت ﺧﺎﺹﯽ‬ ‫را اﻥﺠﺎم دهﺪ . وﻗﺘﯽ ﮐﻪ اﻳﻦ ﺑﺮﻥﺎﻣﻪ هﺎ ﻥﻮﺷﺘﻪ و ﻃﺮاﺣﯽ ﻣﯽ ﺷﻮﻥﺪ ﻣﯽ ﺗﻮان از ﺁﻥﻬﺎ در‬ ‫ﺟﺎهﺎی دﻳﮕﺮ هﻢ دوﺑﺎرﻩ اﺱﺘﻔﺎدﻩ ﮐﺮد . در ﻗﺴﻤﺖ ﭘﺎﻳﻴﻦ ﺗﻌﺪادی از ﮐﻨﺘﺮل هﺎی ‪Activex‬‬ ‫ﮐﻪ در داﺧﻞ ‪ IE‬ﺑﮑﺎر ﻣﯽ روﻥﺪ ﺁوردﻩ ﺷﺪﻩ اﺱﺖ :‬ ‫• ﻥﻤﺎﻳﺸﮕﺮ ﻓﺎﻳﻞ هﺎی ‪Power Point‬‬ ‫• راﺑﻄﻪ هﺎﻳﯽ ﺑﺮای ﺑﮑﺎرﮔﻴﺮی ﺑﺎﻥﮏ هﺎی اﻃﻼﻋﺎﺗﯽ‬ ‫• ﺱﺎﻋﺖ هﺎی ﺑﻴﻦ اﻟﻤﻠﻠﯽ‬ ‫• ﻥﻘﺸﻪ راﻩ هﺎ ﮐﻪ ﮐﺎر ﺑﺎ ﺁﻥﻬﺎ ﺱﺎدﻩ اﺱﺖ .‬ ‫ﻳﮑﯽ از ﺑﺰرﮔﺘﺮﻳﻦ اﻣﺘﻴﺎزات ﺟﺎوا و ‪ Activex‬ﮐﻪ در ‪ add – ons ، Plug – ins‬و‬ ‫ﻥﻤﺎﻳﺸﮕﺮ هﺎ وﺟﻮد ﻥﺪارد اﻳﻦ اﺱﺖ ﮐﻪ ﺁﻥﻬﺎ ﺑﺼﻮرت ﺧﻮدﮐﺎر ﮐﺎر ﻣﯽ ﮐﻨﻨﺪ و ﺷﻤﺎ‬ ‫اﺣﺘﻴﺎﺟﯽ ﻥﺪارﻳﺪ ﮐﻪ ﺑﻪ ﭘﺎﻳﮕﺎﻩ هﺎی اﻳﻨﺘﺮﻥﺖ ﻣﺮاﺟﻌﻪ ﮐﺮدﻩ و ﺁﻥﻬﺎ را ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺧﻮد‬ ‫ﻣﻨﺘﻘﻞ ﮐﻨﻴﺪ و ﻣﺪﺗﯽ وﻗﺖ ﺹﺮف ﮐﻨﻴﺪ ﺗﺎ ﻓﺮم هﺎی ﺛﺒﺖ ﻥﺎم ﺷﻤﺎ را ﭘﺮ ﻥﻤﺎﻳﻴﺪ . ﭘﺲ از‬ ‫اﻥﺘﻘﺎل ﺁﻥﻬﺎ ﺑﻪ دﺱﺘﮕﺎﻩ ﻣﺪﺗﯽ را ﺑﺮای ﻥﺼﺐ ﺁﻥﻬﺎ وﻗﺖ ﺹﺮف ﮐﻨﻴﺪ . از زﻣﺎﻥﯽ ﮐﻪ ﻥﺮم‬ ‫اﻓﺰار ‪ IE‬ﺗﻮاﻥﺴﺖ اﭘﻠﺖ هﺎی ﺟﺎوا ‪ Java Applet‬و ﮐﻨﺘﺮل هﺎی ‪ Activex‬را اﺟﺮا ﮐﻨﺪ‬ ‫ﮐﺎرﺑﺮان اﻳﻨﺘﺮﻥﺖ دﻳﮕﺮ اﺣﺘﻴﺎﺟﯽ ﻥﺪارﻥﺪ ﮐﻪ ﺑﻪ ﭘﺎﻳﮕﺎهﻬﺎی ﺧﺎص ﺑﺮای ﮔﺮﻓﺘﻦ اﻃﻼﻋﺎت‬ ‫ﻣﺮاﺟﻌﻪ ﮐﻨﻨﺪ ﺑﻠﮑﻪ اﭘﻠﺖ هﺎ و ﮐﻨﺘﺮل هﺎ ﺑﻪ هﻤﺎن ﺱﺮﻋﺖ ﮐﻪ ﺑﻪ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﺘﺼﻞ‬ ‫ی ﺷﻮﻥﺪ در هﻤﺎن ﻓﺎﺹﻠﻪ ﻥﻴﺰ ﺑﻪ اﺟﺮا در ﺧﻮاهﻨﺪ ﺁﻣﺪ . ﭘﺎﻳﮕﺎﻩ اﻳﻨﺘﺮﻥﺖ ﻣﺮﺑﻮط ﺑﻪ‬ ‫اﻃﻼﻋﺎت ‪Activex‬‬ ‫6‬
  • 7. ‫ﺑﺮای دﺱﺘﺮﺱﯽ ﺑﻪ اﻳﻦ ﺱﺎﻳﺖ ﻣﯽ ﺗﻮاﻥﻴﺪ از ﺁدرس زﻳﺮ اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ :‬ ‫‪http://www.developer.com‬‬ ‫ﺑﮑﺎر ﺑﺮدن ﮐﻨﺘﺮل هﺎی ‪: Activex‬‬ ‫ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺹﻔﺤﺎت اﻳﻨﺘﺮﻥﺘﯽ ﺷﻤﺎ را ﺑﺼﻮرت زﻥﺪﻩ در ﻣﯽ ﺁورﻥﺪ ﺑﻄﻮرﻳﮑﻪ‬ ‫ﺷﻤﺎ ﻗﺎدر ﺧﻮاهﻴﺪ ﺑﻮد ﻓﺎﻳﻞ هﺎی ﺹﻮﺗﯽ زﻥﺪﻩ را اﺟﺮا ﮐﺮدﻩ و ﻳﺎ ﻥﺸﺎﻥﮕﺮهﺎی ﻣﺘﻐﻴﻴﺮ را‬ ‫ﺑﺒﻴﻨﻴﺪ و ﺑﺴﻴﺎری ﮐﺎرهﺎی ﻣﺸﺎﺑﻪ دﻳﮕﺮ .‬ ‫١- ﺑﻪ ﻳﮏ ﺹﻔﺤﻪ وب ﮐﻪ دارای ﮐﻨﺘﺮل ‪ Activex‬اﺱﺖ ﻣﺘﺼﻞ ﺷﻮﻳﺪ . ﺑﻪ ﻋﻨﻮان‬ ‫ﻣﺜﺎل ﺑﻪ ﺁدرس ﻓﻮق ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ : ‪http://carpoint.msn.com‬‬ ‫٢- ﮔﺰﻳﻨﻪ ﻣﺮﺑﻮط ﺑﻪ اﺟﺮای ﻳﮏ ﻓﺎﻳﻞ ﺹﻮﺗﯽ ﻳﺎ ﺗﺼﻮﻳﺮی را ﮐﻠﻴﻠﮏ ﮐﻨﻴﺪ .‬ ‫٣- در ﺹﻮرت ﻥﻴﺎز ﮔﺰﻳﻨﻪ ‪ Yes‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ ﺗﺎ ﻥﺼﺐ ﮐﻨﺘﺮل ‪ Activex‬ﺑﺮ روی‬ ‫دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻣﻨﺘﻘﻞ ﺷﺪﻩ و اﺟﺮا ﻣﯽ ﺷﻮد .‬ ‫اﮔﺮ ﺷﻤﺎ ﺑﻪ ﻳﮏ ﭘﺎﻳﮕﺎﻩ اﻳﻨﺘﺮﻥﺖ ﮐﻪ دارای ﻳﮏ ﮐﻨﺘﺮل ‪ Activex‬هﺴﺖ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ ﻥﺮم‬ ‫اﻓﺰار ‪ IE‬چﮏ ﻣﯽ ﮐﻨﺪ ﮐﻪ ﮐﺪام ﮐﻨﺘﺮل هﺎ ﺑﺼﻮرت دﻳﺠﻴﺘﺎﻟﯽ ﺗﺎﻳﻴﺪ ﺷﺪﻩ اﻥﺪ . ﻳﮏ ﮐﻨﺘﺮل‬ ‫ﺗﺎﻳﻴﺪ ﺷﺪﻩ دﻳﺠﻴﺘﺎﻟﯽ ﺑﺮﻥﺎﻣﻪ ای اﺱﺖ ﮐﻪ ﺑﺼﻮرت ﻣﺴﺘﻘﻞ ﺗﺎﻳﻴﺪ ﺷﺪﻩ اﺱﺖ ﮐﻪ دارای‬ ‫وﻳﺮوس هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮی ﻥﻴﺴﺖ و ﺗﺎﺛﻴﺮات ﻣﻨﻔﯽ ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﻥﺪارد . ﺷﻤﺎ ﻣﯽ‬ ‫ﺗﻮاﻥﻴﺪ ﭘﻨﺠﺮﻩ ای ﺑﺮ روی ﺹﻔﺤﻪ ﻣﺎﻥﻴﺘﻮر ﺧﻮد ﺑﺒﻴﻨﻴﺪ ﮐﻪ ﺑﻪ ﺷﻤﺎ اﻃﻼع ﻣﯽ دهﺪ ﮐﻪ ﺁﻳﺎ‬ ‫ﻥﺼﺐ ﮐﺮدن اﻳﻦ ﻥﺮم اﻓﺰار ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺑﻪ اﻣﻨﻴﺖ ﺁن ﺹﺪﻣﻪ ای ﻥﻤﯽ زﻥﺪ و ﻳﺎ‬ ‫اﺧﻄﺎر ﻣﯽ دهﺪ ﮐﻪ در ﺹﻮرت ﻥﺼﺐ ﺑﻪ دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺑﺼﻮرت ﻥﺮم اﻓﺰاری ﺁﺱﻴﺐ ﻣﯽ‬ ‫رﺱﺎﻥﺪ .‬ ‫ﻥﮑﺘﻪ :‬ ‫ﺟﺮﻳﺎن دادﻩ : در اﻳﻨﺘﺮﻥﺖ ﺑﻪ ﺟﺎی اﻳﻨﮑﻪ ﻳﮏ ﻓﺎﻳﻞ ﺹﻮﺗﯽ ﺑﺰرگ را ﻗﺒﻞ از اﻳﻨﮑﻪ ﺑﺸﻨﻮﻳﺪ‬ ‫ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮﺗﺎن ﻣﻨﺘﻘﻞ ﻥﮑﻨﻴﺪ از ﺟﺮﻳﺎن دادﻩ اﺱﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد . ﭘﺎﻳﮕﺎهﻬﺎی اﻳﻨﺘﺮﻥﺘﯽ‬ ‫7‬
  • 8. ‫اﻃﻼﻋﺎت ﺧﻮد را ﺑﺼﻮرت ﻳﮏ ﺟﺮﻳﺎن دادﻩ ﻣﯽ ﻓﺮﺱﺘﻨﺪ ، ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﭘﺲ از چﻨﺪ‬ ‫ﺛﺎﻥﻴﻪ از ﺷﺮوع ﺟﺮﻳﺎن دادﻩ ﺁن را ﺑﺎ ﺧﺒﺮ ﮐﺮدﻩ و ﺷﺮوع ﺑﻪ ﭘﺨﺶ ﺁن ﻣﯽ ﮐﻨﺪ و ﺑﻪ هﻤﻴﻦ‬ ‫ﺗﺮﺗﻴﺐ ﺁن ﻓﺎﻳﻞ ﺹﻮﺗﯽ ﻳﺎ ﺗﺼﻮﻳﺮی را ﺗﺎ اﻥﺘﻬﺎ اﺟﺮا ﻣﯽ ﮐﻨﺪ .‬ ‫اﺟﺮای ‪ Java Applet‬و ﻧﻤﺎﻳﺸﮕﺮهﺎ :‬ ‫ﻥﺮم اﻓﺰار ‪ IE‬ﻳﮏ ‪ Java Applet‬را وﻗﺘﯽ اﺟﺮا ﻣﯽ ﮐﻨﺪ ﮐﻪ ﺹﻔﺤﻪ وب ﺣﺎوی ﺁن در‬ ‫ﺣﺎل ﺷﺮوع ﺑﻪ ﻥﻤﺎﻳﺶ ﺑﺮ روی ﺹﻔﺤﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻣﯽ ﺑﺎﺷﺪ . هﺰاران ‪Java Applet‬‬ ‫ﺑﺮ روی وب وﺟﻮد دارد ﻥﻈﻴﺮ ﻥﺸﺎﻥﮕﺮهﺎی ﻣﺘﻐﻴﻴﺮ ﺑﺎﻻ و ﭘﺎﻳﻴﻦ ﺑﺮﻥﺪﻩ ﺹﻔﺤﻪ ﮐﻪ از ﺧﻮد‬ ‫ﺹﺪا ﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﺪ ، ﻣﺎﺷﻴﻦ ﺣﺴﺎﺑﻬﺎ و ﺑﺴﻴﺎری از ﻋﻤﻠﮑﺮدهﺎی دﻳﮕﺮ .‬ ‫اﺟﺮای ﻳﮏ ‪: Java Applet‬‬ ‫١- ﺑﻪ ﻳﮏ ﺹﻔﺤﻪ وب ﮐﻪ دارای ‪ Java Applet‬هﺴﺖ ﻣﺘﺼﻞ ﺷﻮﻳﺪ . ﺑﻪ ﻋﻨﻮان‬ ‫ﻣﺜﺎل ﺑﻪ ﺁدرس هﺎی زﻳﺮ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬ ‫‪http://www.gamelan.com‬‬ ‫و ﻳﺎ‬ ‫‪http://www.javasoft.com‬‬ ‫٢- ﻣﻨﻮی ‪ Category‬را اﻥﺘﺨﺎب ﮐﻨﻴﺪ و ﺱﭙﺲ ﮔﺰﻳﻨﻪ ﻣﺮﺑﻮط ﺑﻪ ﻥﻤﺎﻳﺶ ﺹﻔﺤﻪ وب‬ ‫هﻤﺮاﻩ ﺑﺎ ‪ Java Applet‬را ﮐﻠﻴﮏ ﻥﻤﺎﻳﻴﺪ . ‪ Java Applet‬ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ‬ ‫ﻣﻨﺘﻘﻞ ﺧﻮاهﺪ ﺷﺪ و ﺑﻪ اﺟﺮا در ﺧﻮاهﺪ ﺁﻣﺪ .‬ ‫٣- اﮔﺮ ﻻزم ﺷﺪ اﻃﻼﻋﺎت درﺧﻮاﺱﺘﯽ اﭘﻠﺖ هﺎی ﺟﺎوا و ﻳﺎ ﻣﻨﻮهﺎی ﻣﻨﺎﺱﺐ ﺁن را‬ ‫ﮐﻠﻴﮏ ﮐﻨﻴﺪ ﺗﺎ اﺟﺮای ﺁن ﮐﺎﻣﻞ ﺷﻮد .‬ ‫ﺧﺎﻣﻮش ﮐﺮدن اﺟﺮا ﮐﻨﻨﺪﻩ ‪: JIT‬‬ ‫١- ﻣﻨﻮی اﺑﺰار را ﮐﻠﻴﮏ ﮐﺮدﻩ و ﺱﭙﺲ ‪ Internet Option‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬ ‫8‬
  • 9. ‫٢- ﺟﻌﺒﻪ ‪ Advance‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .ﺹﻔﺤﻪ را ﺑﻪ ﭘﺎﻳﻴﻦ ﺁورﻳﺪ ﺗﺎ ﺑﻪ ﻗﺴﻤﺖ ‪Java‬‬ ‫‪ MV‬ﺑﺮﺱﻴﺪ .‬ ‫٣- ﺟﻌﺒﻪ ﻣﺮﺑﻮط ﺑﻪ ﮔﺰﻳﻨﻪ ‪Java JIT Complier‬‬ ‫۴- ﮐﻠﻴﺪ ‪ OK‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬ ‫ﻥﺮم اﻓﺰار ‪ IE‬دارای ﻳﮏ اﺟﺮا ﮐﻨﻨﺪﻩ ﻥﺮم اﻓﺰار اﺱﺖ ﮐﻪ دﻗﻴﻘﺎ در هﻤﺎن زﻣﺎن ﮔﺮﻓﺘﻦ‬ ‫ﺑﺮﻥﺎﻣﻪ ﺁن را اﺟﺮا ﻣﯽ ﮐﻨﺪ )‪ (JIT‬ﺑﺼﻮرت ﭘﻴﺶ ﻓﺮض روﺷﻦ اﺱﺖ . وﻗﺘﯽ ﮐﻪ ﺷﻤﺎ ﺑﺎ‬ ‫ﻣﺸﮑﻠﯽ در اﺟﺮای اﭘﻠﺖ هﺎی ﺟﺎوا )‪ (Java Applet‬ﺑﺮﺧﻮرد ﮐﺮدﻳﺪ ، ﻣﯽ ﺗﻮاﻥﻴﺪ اﺟﺮا‬ ‫ﮐﻨﻨﺪﻩ ‪ JIT‬ﺧﻮد را در ﻣﻨﻮی ‪ Advance‬در ‪ Internet Option‬ﺧﺎﻣﻮش ﮐﻨﻴﺪ . ﺑﺪﻳﻦ‬ ‫ﺗﺮﺗﻴﺐ اﭘﻠﺖ هﺎی ﺟﺎوا ﺑﺮ روی دﺱﺘﮕﺎﻩ ﺷﻤﺎ دﻳﮕﺮ اﺟﺮا ﻥﺨﻮاهﻨﺪ ﺷﺪ .‬ ‫ﮐﻨﺘﺮل ﮐﺮدن ‪ Activex‬و ﺑﺮﻧﺎﻣﻪ هﺎی ‪: Java‬‬ ‫ﺗﻮﺱﻂ ‪ IE‬ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ دﻗﻴﻘﺎ ﺗﻌﻴﻴﻦ ﮐﻨﻴﺪ ﮐﻨﺘﺮل هﺎی ‪ Activex‬و ﺑﺮﻥﺎﻣﻪ هﺎی ‪Java‬‬ ‫‪ Applet‬ﺗﺎ چﻪ ﺣﺪ ﺑﺮ روی ﺑﺮﻥﺎﻣﻪ هﺎی دﺱﺘﮕﺎﻩ ﺷﻤﺎ ﺗﺎﺛﻴﺮ ﺑﮕﺬارﻥﺪ ﺑﺎ اﺱﺘﻔﺎدﻩ از‬ ‫‪ Security Zones‬اﺱﺘﻔﺎدﻩ ﮐﻨﻨﺪﮔﺎن و ﻣﺪﻳﺮان ﺷﺒﮑﻪ ﻣﯽ ﺗﻮاﻥﻨﺪ درﺑﺎرﻩ ﺱﻄﺢ دﺱﺘﺮﺱﯽ‬ ‫ﮐﻨﺘﺮل هﺎی ‪ Activex‬و ﺑﺮﻥﺎﻣﻪ هﺎی ‪ Java Applet‬ﺗﺼﻤﻴﻢ ﺑﮕﻴﺮﻥﺪ . ﺑﻪ ﻋﻨﻮان ﻣﺜﺎل‬ ‫ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﻪ ﺑﺮﻥﺎﻣﻪ هﺎی ‪ Java Applet‬ﮐﻪ از ﭘﺎﻳﮕﺎهﻬﺎی ﻣﻌﺘﺒﺮ ﺑﺮ روی اﻳﻨﺘﺮﻥﺖ‬ ‫درﻳﺎﻓﺖ ﻣﯽ ﮐﻨﻴﺪ اﺟﺎزﻩ دﺱﺘﺮﺱﯽ ﺑﻴﺸﺘﺮی ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮﺗﺎن را ﺑﺪهﻴﺪ و ﻳﺎ اﻳﻨﮑﻪ ﺟﺎوا اﭘﻠﺖ‬ ‫هﺎی ﮔﺮﻓﺘﻪ ﺷﺪﻩ از ﭘﺎﻳﮕﺎهﻬﺎی ﻏﻴﺮ ﻣﻌﺘﺒﺮ را از ﻟﺤﺎظ دﺱﺘﺮﺱﯽ ﺑﻪ ﻓﺎﻳﻞ هﺎی دﺱﺘﮕﺎهﺘﺎن‬ ‫ﻣﺤﺪود ﮐﻨﻴﺪ ﺗﺎ ﻥﺘﻮاﻥﻨﺪ ﺑﻪ ﺁﻥﻬﺎ ﺁﺱﻴﺐ ﺑﺮﺱﺎﻥﻨﺪ .‬ ‫9‬
  • 10. ‫ﺕﻐﻴﻴﺮ دادن درﺟﻪ اﻣﻨﻴﺖ ﺑﺮﻧﺎﻣﻪ هﺎی ‪Activex‬‬ ‫١- ﻣﻨﻮی ‪ Tools‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ و ﺱﭙﺲ ﮔﺰﻳﻨﻪ ‪ Internet Option‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬ ‫٢- ﮔﺰﻳﻨﻪ ‪ Security‬را در ﺑﺎﻻی ﭘﻨﺠﺮﻩ ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬ ‫٣- ﺑﺮ روی ﮔﺰﻳﻨﻪ ﻣﻨﺎﺱﺐ ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬ ‫۴- ﺁﻥﮕﺎﻩ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﺎ ﺑﺎﻻ ﺑﺮدن ﻥﺸﺎﻥﻪ ، ﺗﺪاﺑﻴﺮ اﻣﻨﻴﺘﯽ ﺷﺪﻳﺪﺗﺮی اﺗﺨﺎذ ﮐﻨﻴﺪ و ﻳﺎ‬ ‫ﺑﺎﻟﻌﮑﺲ ﺑﺎ ﭘﺎﻳﻴﻦ ﺁوردن ﻥﺸﺎﻥﻪ درﺟﻪ اﻣﻨﻴﺖ را ﭘﺎﻳﻴﻦ ﺗﺮ ﺑﻴﺎورﻳﺪ و در اﺹﻄﻼح‬ ‫ﺑﻪ ‪ Java Applets‬اﻃﻤﻴﻨﺎن ﮐﻨﻴﺪ .‬ ‫۵- ﺑﺮای ﺗﻐﻴﻴﺮ ﻣﺸﺨﺼﺎت ﺣﺮﻓﻪ ای ﺗﺮ ﻣﯽ ﺗﻮاﻥﻴﺪ ﮔﺰﻳﻨﻪ ‪ Custom Level‬را‬ ‫ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬ ‫۶- ﺑﺮای ﺗﻐﻴﻴﺮ هﺮ ﮐﺪام از ﻣﺸﺨﺼﺎت زﻳﺮ ﻳﮑﯽ از ٣ ﮔﺰﻳﻨﻪ ) ﻗﺎﺑﻞ اﺟﺮا (‬ ‫‪ ، Enable‬ﺁﻣﺎدﻩ ‪ Prompt‬و ) ﻏﻴﺮ ﻗﺎﺑﻞ اﺟﺮا ( را اﻥﺘﺨﺎب ﮐﻨﻴﺪ .‬ ‫• ﻣﺸﺨﺼﻪ ‪ Script Activex‬در ﺣﻘﻴﻘﺖ اﻣﻦ ﺑﻮدن اﺱﮑﺮﻳﭙﺖ هﺎ را چﮏ‬ ‫ﻣﯽ ﮐﻨﺪ .‬ ‫• ﻣﺸﺨﺼﻪ ﺑﻌﺪی اﻣﻨﻴﺖ اﺟﺮای ﮐﻨﺘﺮل هﺎی ‪ Activex‬و ﺑﺮﻥﺎﻣﻪ هﺎی‬ ‫‪ Plug – ins‬چﮏ ﻣﯽ ﮐﻨﺪ .‬ ‫• ﮔﺰﻳﻨﻪ ﺑﻌﺪی ﻣﺮﺑﻮط ﺑﻪ ﮔﺮﻓﺘﻦ ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺗﺎﻳﻴﺪ ﺷﺪﻩ ﺗﻮﺱﻂ‬ ‫ﻋﻼﻣﺖ دﻳﺠﻴﺘﺎﻟﯽ اﺱﺖ )‪(Signed‬‬ ‫• ﮔﺰﻳﻨﻪ ﺑﻌﺪی ﻣﺮﺑﻮط ﺑﻪ ﮔﺮﻓﺘﻦ ﮐﻨﺘﺮل هﺎی ‪ Activex‬ﺗﺎﺉﻴﺪ ﻥﺸﺪﻩ ﺗﻮﺱﻂ‬ ‫ﻋﻼﻣﺖ هﺎی دﻳﺠﻴﺘﺎﻟﯽ اﺱﺖ )‪(Unsigned‬‬ ‫• ﮔﺰﻳﻨﻪ ﺑﻌﺪی ﻣﺮﺑﻮط ﺑﻪ ﻣﻘﺪار دهﯽ و اﺟﺮای ﮐﻨﺘﺮل هﺎی ‪ Activex‬اﺱﺖ‬ ‫ﮐﻪ اﻣﻨﻴﺖ ﺁﻥﻬﺎ ﺗﺎﻳﻴﺪ ﻥﺸﺪﻩ اﺱﺖ .‬ ‫• ﮔﺰﻳﻨﻪ ‪ Ok‬را ﮐﻠﻴﮏ ﮐﻨﻴﺪ .‬ ‫‪ Activex‬و اﻣﻨﻴﺖ:‬ ‫ﻣﻄﻤﺌﻨﺎ ﺗﺎ ﺑﻪ ﺣﺎل درﺑﺎرﻩ وﻳﺮوس هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮی ) ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ ﮐﻪ ﺑﺎ ﺁﻟﻮدﻩ ﮐﺮدن‬ ‫ً‬ ‫ﺱﻴﺴﺘﻢ هﺎ ﺹﺪﻣﺎﺗﯽ ﺑﻪ ﺁﻥﻬﺎ ﻣﯽ زﻥﻨﺪ ( چﻴﺰهﺎﻳﯽ ﺷﻨﻴﺪﻩ اﻳﺪ . وﻳﺮوس هﺎی ﻣﺨﺘﻠﻔﯽ از‬ ‫01‬
  • 11. ‫اﻥﻮاع ﺑﯽ ﺁزار ﺗﺎ ﺑﺴﻴﺎر ﻣﺨﺮب وﺟﻮد دارﻥﺪ و ﺗﻼش هﺎی زﻳﺎدی ﺹﻮرت ﻣﯽ ﮔﻴﺮد ﺗﺎ‬ ‫ﺟﻠﻮی اﻳﻦ ﺁﻟﻮدﮔﯽ و اﻥﺘﺸﺎر وﻳﺮوس هﺎ ﮔﺮﻓﺘﻪ ﺷﻮد . اﻣﺎ ﺁﻳﺎ اﻳﻦ اﺣﺘﻤﺎل وﺟﻮد ﻥﺪارد ﮐﻪ‬ ‫وﻳﺮوﺱﻬﺎ ) ﻳﺎ دﻳﮕﺮ ﻥﺮم اﻓﺰارهﺎی ﻣﺨﺮب ( از ﻃﺮﻳﻖ اﻳﻨﺘﺮﻥﺖ ﭘﺮاﮐﻨﺪﻩ ﺷﻮﻥﺪ ؟‬ ‫در روزهﺎی اول وب اﻳﻦ ﺧﻄﺮ چﻨﺪان ﺟﺪی ﻥﺒﻮد چﻮن ﺱﻨﺪهﺎی ‪ HTML‬و ﻓﺎﻳﻠﻬﺎی‬ ‫ﮔﺮاﻓﻴﮑﯽ و ﺗﺼﻮﻳﺮی ﺗﻨﻬﺎ اﻥﻮاع ﻓﺎﻳﻞ هﺎﻳﯽ ﺑﻮد ﮐﻪ روی اﻳﻨﺘﺮﻥﺖ ﺟﺎﺑﺠﺎ ﻣﯽ ﺷﺪ . اﻳﻦ‬ ‫ﻗﺒﻴﻞ ﻓﺎﻳﻠﻬﺎ ﻣﯽ ﺗﻮاﻥﺴﺘﻨﺪ ﺧﺮاب ﺑﺎﺷﻨﺪ اﻣﺎ در ﺽﻤﻦ هﻴﭻ ﺧﻄﺮی ﺑﺮای ﺱﻴﺴﺘﻤﯽ ﮐﻪ ﺁﻥﻬﺎ‬ ‫را ﺑﺎر ﻣﯽ ﮐﺮد ﻥﺪاﺷﺘﻨﺪ .‬ ‫اﻣﺎ ﺑﺎ روی ﮐﺎر ﺁﻣﺪن ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل اوﺽﺎع دﮔﺮﮔﻮن ﺷﺪ ، چﻮن در اﻳﻦ ﺣﺎﻟﺖ ﺑﺮﻥﺎﻣﻪ‬ ‫هﺎ هﻢ ﺟﺰﻳﯽ از وب ﺷﺪﻩ ﺑﻮدﻥﺪ و ﻳﮏ ﺑﺮﻥﺎﻣﻪ هﻢ ﻗﺎﻋﺪﺗﺎ هﺮ ﮐﺎری ﻣﯽ ﺗﻮاﻥﺪ اﻥﺠﺎم ﻣﯽ‬ ‫ً‬ ‫دهﺪ ) از ﭘﺎک ﮐﺮدن ﻓﺎﻳﻞ هﺎی ﮐﺎﻣﭙﻴﻮﺗﺮی ﻣﻘﺼﺪ ﮔﺮﻓﺘﻪ ﺗﺎ دزدﻳﺪن اﻃﻼﻋﺎت ﺁن و اﻥﺘﻘﺎل‬ ‫ﺁﻥﻬﺎ ﺑﻪ ﺟﺎهﺎی ﻥﺎﻣﻌﻠﻮم ( . در اﻳﻨﺠﺎ ﺑﻮد ﮐﻪ ﺷﺮﮐﺘﻬﺎی ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ اﺑﺰارهﺎی ﺑﺮﻥﺎﻣﻪ‬ ‫ﻥﻮﻳﺴﯽ وب ﺑﻪ ﺽﺮورت ﺗﻤﻬﻴﺪات اﻣﻨﻴﺘﯽ ﭘﯽ ﺑﺮدﻥﺪ . وﻗﺘﯽ در وب ﮔﺸﺖ و ﮔﺬار ﻣﯽ‬ ‫ﮐﻨﻴﺪ . ﻣﺎﻳﻠﻴﺪ ﻣﻄﻤﺌﻦ ﺑﺎﺷﻴﺪ ﮐﺪهﺎﻳﯽ ﮐﻪ ﺑﺎر ﻣﯽ ﮐﻨﻴﺪ ﺱﻴﺴﺘﻢ ﺗﺎن را ﺑﻬﻢ ﻥﺨﻮاهﻨﺪ رﻳﺨﺖ !‬ ‫ﺑﺮای ﻣﻘﺎﺑﻠﻪ ﺑﺎ اﻳﻦ ﻣﺸﮑﻞ ﺑﺎﻟﻘﻮﻩ دو روش اﺱﺎﺱﯽ اﺑﺪاع ﺷﺪ .‬ ‫روش اول ﺁن ﺑﻮد ﮐﻪ اﺱﺎﺱﺎ اﺟﺎزﻩ اﻋﻤﺎل ﺑﺎﻟﻘﻮﻩ ﺧﻄﺮﻥﺎک ﺑﻪ ﺑﺮﻥﺎﻣﻪ هﺎی وب دادﻩ‬ ‫ً‬ ‫ﻥﺸﻮد . اﻳﻦ راهﯽ ﺑﻮد ﮐﻪ ﺟﺎوا در ﭘﻴﺶ ﮔﺮﻓﺖ . اﭘﻠﺖ هﺎی ﺟﺎوا ﻗﺎدر ﺑﻪ اﻥﺠﺎم اﻓﻌﺎل‬ ‫ﺑﺎﻟﻘﻮﻩ ﻣﺨﺮب ) ﻣﺎﻥﻨﺪ دﺱﺘﺮﺱﯽ ﺑﻪ ﺱﻴﺴﺘﻢ ﻓﺎﻳﻞ ( ﻥﻴﺴﺘﻨﺪ و ﻣﯽ ﺗﻮاﻥﻴﺪ ﻣﻄﻤﺌﻦ ﺑﺎﺷﻴﺪ ﮐﻪ‬ ‫ﺁﻥﻬﺎ ﺑﯽ ﺧﻄﺮ هﺴﺘﻨﺪ درﺱﺖ هﻤﺎﻥﮕﻮﻥﻪ ﮐﻪ ﻳﮏ چﺎﻗﻮی ﭘﻼﺱﺘﻴﮑﯽ ﺑﯽ ﺧﻄﺮ اﺱﺖ !‬ ‫در روش دوم ، ﮐﻪ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺑﺮای ﻋﻨﺎﺹﺮ ‪ Activex‬در ﭘﻴﺶ ﮔﺮﻓﺖ ، ﺑﻪ ﺟﺎی‬ ‫ﻣﺤﺪود ﮐﺮدن ذاﺗﯽ ﺑﺮﻥﺎﻣﻪ هﺎ از ﻳﮏ ﺗﮑﻨﻮﻟﻮژی ﺑﻨﺎم ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر ﻳﺎ‬ ‫‪ Authenticode‬ﺑﺮای ﺗﻌﻴﻴﻦ ﺹﺤﺖ و ﺱﻘﻢ ﻥﺮم اﻓﺰارهﺎ اﺱﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد . اﻳﺪﻩ ﻥﻬﻔﺘﻪ‬ ‫در اﻳﻦ روش اﻳﻦ اﺱﺖ ﮐﻪ اﮔﺮ ﺷﻤﺎ ﺑﺪاﻥﻴﺪ ﮐﻪ ﻳﮏ ﻋﻨﺼﺮ ‪ ) Activex‬ﻳﺎ هﺮ ﻥﺮم‬ ‫اﻓﺰار دﻳﮕﺮی ( از ﮐﺠﺎ ﺁﻣﺪﻩ ) ﺧﺎﻟﻖ ﺁن ﮐﻴﺴﺖ ( و ﺗﻐﻴﻴﺮی هﻢ در ﺁن ﺹﻮرت ﻥﮕﺮﻓﺘﻪ ،‬ ‫دﻳﮕﺮ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﺎ ﺧﻴﺎل راﺣﺖ از ﺁن اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ . ﺑﻪ اﻳﻦ روش اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ﻳﺎ‬ ‫‪ Digital Signing‬هﻢ ﮔﻔﺘﻪ ﻣﯽ ﺷﻮد .‬ ‫اﻣﻀﺎء دﻳﺠﻴﺘﺎﻟﯽ از دﻳﺪﮔﺎﻩ ﮐﺎرﺑﺮان :‬ ‫وﻗﺘﯽ از ﻳﮏ ﮐﺎوﺷﮕﺮ ﺑﺎ ﻗﺎﺑﻠﻴﺖ ‪ Activex‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻴﺪ در واﻗﻊ ﺱﻄﻮح اﻣﻨﻴﺘﯽ‬ ‫ﻣﺨﺘﻠﻔﯽ را در اﺧﺘﻴﺎر دارﻳﺪ ، ﮐﻪ ﻣﯽ ﺗﻮاﻥﻴﺪ از ﺁﻥﻬﺎ ﺑﺴﺘﻪ ﺑﻪ ﻥﻴﺎزﺗﺎن اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ . اﻳﻦ‬ ‫ﺱﻄﻮح ﻋﺒﺎرﺗﻨﺪ از : ﺽﻌﻴﻒ ، ﻣﺘﻮﺱﻂ ، ﺷﺪﻳﺪ . ﺑﺮای اﻥﺘﺨﺎب ﺱﻄﺢ اﻣﻨﻴﺘﯽ دﻟﺨﻮاﻩ در‬ ‫ﮐﺎوﺷﮕﺮ ‪ ، Internet Explorer‬ﺁﻳﺘﻢ ‪ Internet Options‬را از ﻣﻨﻮی ‪View‬‬ ‫اﻥﺘﺨﺎب ﮐﺮدﻩ و ﺱﭙﺲ ﺑﻪ ﺑﺮﮔﻪ ‪ Security‬ﺑﺮوﻳﺪ .‬ ‫در ﻗﺴﻤﺖ ﭘﺎﻳﻴﻦ دﻳﺎﻟﻮگ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺱﺎﻳﺘﻬﺎی هﺮ ﻣﻨﻄﻘﻪ را اﻥﺘﺨﺎب ﮐﺮدﻩ و ﺱﭙﺲ در‬ ‫ﻗﺴﻤﺖ ﭘﺎﻳﻴﻦ دﻳﺎﻟﻮگ ﺱﻄﺢ اﻣﻨﻴﺘﯽ هﺮ ﻣﻨﻄﻘﻪ را ﺗﻌﻴﻴﻦ ﮐﻨﻴﺪ . ﺱﺎﻳﺘﻬﺎی ﻗﺎﺑﻞ اﻃﻤﻴﻨﺎن و‬ ‫ﺷﻨﺎﺧﺘﻪ ﺷﺪﻩ را ﻣﯽ ﺗﻮاﻥﻴﺪ در ﻣﻨﻄﻘﻪ ﻣﻮرد اﻋﺘﻤﺎد ) ‪ ( Trusted‬ﻗﺮار دهﻴﺪ . اﻳﻦ ﻣﻨﻄﻘﻪ‬ ‫11‬
  • 12. ‫دارای ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﺽﻌﻴﻒ اﺱﺖ . ﺱﺎﻳﺘﻬﺎی ﻥﺎﺷﻨﺎﺧﺘﻪ را در ﻣﻨﻄﻘﻪ ﻣﺤﺪود‬ ‫)‪ ( Restricted‬ﮐﻪ ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﺑﺎﻻﻳﯽ دارد ، ﻗﺮار دهﻴﺪ .‬ ‫ﺱﻄﻮح اﻣﻨﻴﺘﯽ ‪ Internet Explorer‬ﻋﺒﺎرﺗﻨﺪ از :‬ ‫• ﺷﺪﻳﺪ )‪ : (High‬ﺑﺮﻥﺎﻣﻪ هﺎی ﺑﺎﻟﻘﻮﻩ ﺧﻄﺮﻥﺎک هﺮﮔﺰ ﺑﺎر ﻥﻤﯽ ﺷﻮﻥﺪ . هﺮ اﻗﺪاﻣﯽ‬ ‫ﺑﺮای ﺑﺎر ﮐﺮدن ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﻪ ﺷﻤﺎ اﻃﻼع دادﻩ ﺧﻮاهﺪ ﺷﺪ .‬ ‫• ﻣﺘﻮﺱﻂ ) ‪ : (Medium‬هﻨﮕﺎم ﺑﺎرﮐﺮدن ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﻪ ﺷﻤﺎ اﺧﻄﺎر دادﻩ ﻣﯽ‬ ‫ﺷﻮد وﻟﯽ اﻳﻦ اﻣﮑﺎن را ﺧﻮاهﻴﺪ داﺷﺖ ﮐﻪ ) ﺑﺮ اﺱﺎس اﻣﻀﺎء دﻳﺠﻴﺘﺎﻟﯽ ( ﺁﻥﺮا‬ ‫ﺑﺎر ﮐﻨﻴﺪ .‬ ‫• ﺽﻌﻴﻒ )‪ : (Low‬ﺗﻤﺎم ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﺪون هﻴﭻ اﺧﻄﺎری ﺑﺎر ﺧﻮاهﻨﺪ ﺷﺪ .‬ ‫• ﻗﺎﺑﻞ ﺗﻨﻈﻴﻢ )‪ : (Custom‬ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﺮای هﺮ ﻥﻮع ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺱﻄﺢ اﻣﻨﻴﺘﯽ‬ ‫ﻣﻨﺎﺱﺐ ) هﺮﮔﺰ ﺑﺎر ﻥﺸﻮد ، ﺑﺎ دادن اﺧﻄﺎر ﺑﺎر ﺷﻮد ، هﻤﻴﺸﻪ ﺑﺎر ﺷﻮد ( را‬ ‫ﺗﻌﻴﻴﻦ ﮐﻨﻴﺪ . ﺗﻮﺹﻴﻪ ﻣﯽ ﺷﻮد ﺗﺎ زﻣﺎﻥﻴﮑﻪ ﺑﺎ ﺗﻤﺎم اﻥﻮاع ﻣﺤﺘﻮﻳﺎت ﻣﻮﺟﻮد در وب‬ ‫ﺁﺷﻨﺎ ﻥﺸﺪﻩ اﻳﺪ از اﻳﻦ ﮔﺰﻳﻨﻪ اﺱﺘﻔﺎدﻩ ﻥﮑﻨﻴﺪ .‬ ‫روش ﮐﺎر اﻳﻦ ﺱﻴﺴﺘﻢ چﻨﻴﻦ اﺱﺖ : وﻗﺘﯽ ﺑﻪ ﺹﻔﺤﻪ وﺑﯽ ﻣﯽ روﻳﺪ ﮐﻪ ﻣﯽ ﺧﻮاهﺪ‬ ‫ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺧﻮد را ﺑﺮای ﺷﻤﺎ ﺑﻔﺮﺱﺘﺪ ، ﮐﺎوﺷﮕﺮ اﺑﺘﺪا اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ﺗﻤﺎم ﺁﻳﺘﻢ‬ ‫هﺎی ﻥﺮم اﻓﺰاری ﺁﻥﺮا چﮏ ﻣﯽ ﮐﻨﺪ . اﮔﺮ اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ وﺟﻮد ﻥﺪاﺷﺘﻪ ﺑﺎﺷﺪ ،‬ ‫ﻣﺤﺘﻮﻳﺎت ﻓﻘﻂ در ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﺽﻌﻴﻒ اﺟﺎزﻩ ﺑﺎرﺷﺪن ﺧﻮاهﻨﺪ داﺷﺖ . در ﻏﻴﺮ اﻳﻦ‬ ‫ﺹﻮرت ، ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ اﻃﻼﻋﺎت ﻣﻮﺟﻮد در اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ، ﺱﺎﻟﻢ ﺑﻮدن ﺁﻳﺘﻢ هﺎ ) ﻋﺪم‬ ‫ﺗﻐﻴﻴﺮ در ﻣﺤﺘﻮﻳﺎت ﺁﻥﻬﺎ ( ﺑﺮرﺱﯽ ﻣﯽ ﺷﻮد . ﺽﺮورت اﻳﻦ ﮐﺎر از ﺁﻥﺠﺎ ﻥﺎﺷﯽ ﻣﯽ ﺷﻮد‬ ‫ﮐﻪ اﻓﺮاد ﺷﺮور ﻣﯽ ﺗﻮاﻥﻨﺪ ﺑﺮای ﻳﮏ ﻥﺮم اﻓﺰار ﺑﯽ ﺽﺮر اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ و ﺗﺎﺉﻴﺪﻳﻪ‬ ‫ﺑﮕﻴﺮﻥﺪ و ﺱﭙﺲ ﺁﻥﺮا ﺗﻐﻴﻴﺮ دادﻩ و ﺑﺼﻮرت ﺧﺮاﺑﮑﺎر و ﺧﻄﺮﻥﺎک در ﺁورﻥﺪ .‬ ‫در ﺱﻄﺢ اﻣﻨﻴﺘﯽ ﻣﺘﻮﺱﻂ ﻥﺎم ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ ﻥﺮم اﻓﺰار ﺑﺎﻳﺴﺘﯽ از ﻣﻨﺎﺑﻊ ﺗﺎﻳﻴﺪ ﺷﺪﻩ از ﺱﻮی‬ ‫ﺷﻤﺎ ﻣﻄﺎﺑﻘﺖ دادﻩ ﺧﻮاهﺪ ﺷﺪ . اﮔﺮ اﻳﻦ ﻥﺎم در ﻟﻴﺴﺖ ﻣﻮرد اﻋﺘﻤﺎد ﺷﻤﺎ ﻥﺒﺎﺷﺪ ، دﻳﺎﻟﻮﮔﯽ‬ ‫ﻣﻮﺽﻮع را ﮔﻮﺷﺰد ﮐﺮدﻩ و اﺟﺎزﻩ ﺑﺎرﮐﺮدن ﺁﻥﺮا ﺑﻪ ﺷﻤﺎ ﺧﻮاهﺪ داد . در هﻤﻴﻦ دﻳﺎﻟﻮگ‬ ‫ﻣﯽ ﺗﻮاﻥﻴﺪ ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ ﻣﺰﺑﻮر را هﻢ ﺑﻪ ﻟﻴﺴﺖ ﻣﻌﺘﻤﺪﻳﻦ ﺧﻮد اﺽﺎﻓﻪ ﮐﻨﻴﺪ .‬ ‫21‬
  • 13. ‫ﺱﺎﻳﺘﻬﺎ در ‪. Internet Explorer‬‬ ‫اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ از دﻳﺪ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ :‬ ‫در ﻳﮏ اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ ﺱﻪ دﺱﺘﻪ اﻃﻼﻋﺎت وﺟﻮد دارد : هﻮﻳﺖ ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ ﻥﺮم اﻓﺰار،‬ ‫هﻮﻳﺖ ﻣﻨﺒﻊ ﺗﺎﻳﻴﺪ ﮐﻨﻨﺪﻩ ) ﺱﺎزﻣﺎﻥﯽ ﮐﻪ اﻣﻀﺎء را ﺹﺎدر ﮐﺮدﻩ ( و ﻳﮏ ﻋﺪد رﻣﺰ ﺑﺮای‬ ‫ﺗﺎﻳﻴﺪ اﻳﻦ ﻣﻄﻠﺐ ﮐﻪ ﻣﺤﺘﻮﻳﺎت ﻥﺮم اﻓﺰار دﺱﺘﮑﺎری ﻥﺸﺪﻩ اﺱﺖ .‬ ‫اﮔﺮ ﻣﯽ ﺧﻮاهﻴﺪ ﺑﺮای وب ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل ﺑﻨﻮﻳﺴﻴﺪ ﺑﺎﻳﺪ ﻳﮏ ﮔﻮاهﻴﻨﺎﻣﻪ ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر‬ ‫ﺑﺮای ﺧﻮد دﺱﺖ و ﭘﺎ ﮐﻨﻴﺪ ﺗﺎ ﺑﺘﻮاﻥﻴﺪ ﺑﺮای ﻥﺮم اﻓﺰار هﺎی ﺧﻮد اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ‬ ‫ﺑﮕﻴﺮﻳﺪ . اﮔﺮ ﻓﻘﻂ ﺑﺮای اﻳﻨﺘﺮﻥﺖ ﺑﺮﻥﺎﻣﻪ ﻣﯽ ﻥﻮﻳﺴﻴﺪ ﻥﻴﺎزی ﺑﻪ اﻳﻦ ﻣﺮاﺣﻞ ﻥﺪارﻳﺪ چﻮن‬ ‫ﺱﻄﺢ اﻣﻨﻴﺘﯽ در ﺁﻥﻬﺎ ﻣﻌﻤﻮﻻ ﭘﺎﻳﻴﻦ اﺱﺖ و ﻥﻴﺎزی ﺑﻪ اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ وﺟﻮد ﻥﺪارد .‬ ‫اﮔﺮ ﺹﺮﻓﺎ ﺑﺮای ﺷﺮﮐﺖ ﺧﻮد ﻥﺮم اﻓﺰار ﻣﯽ ﻥﻮﻳﺴﻴﺪ ﻣﯽ ﺗﻮاﻥﻴﺪ از ﮔﻮاهﻴﻨﺎﻣﻪ ﺁن اﺱﺘﻔﺎدﻩ‬ ‫ً‬ ‫ﮐﻨﻴﺪ . اﻣﺎ ﺗﻮﺹﻴﻪ ﻣﯽ ﺷﻮد ﺧﻮدﺗﺎن هﻢ اﻳﻦ ﮔﻮاهﻴﻨﺎﻣﻪ را ﺑﮕﻴﺮﻳﺪ . ﺑﺎ ﺁن ﮐﻪ ﺷﺮﮐﺘﻬﺎی‬ ‫ﻣﺘﻌﺪدی ﺑﺮای ﺹﺪور ﮔﻮاهﻴﻨﺎﻣﻪ ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر وﺟﻮد دارﻥﺪ ، ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺷﺮﮐﺖ‬ ‫‪ Verisign‬را ﺗﻮﺹﻴﻪ ﻣﯽ ﮐﻨﺪ . ﺑﺮای ﮐﺴﺐ اﻃﻼﻋﺎت ﺑﻴﺸﺘﺮ ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﻪ ﺱﺎﻳﺖ وب‬ ‫اﻳﻦ ﺷﺮﮐﺖ ﮐﻪ در زﻳﺮ ﺁﻣﺪﻩ اﺱﺖ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬ ‫‪http://www.verisign.com/developers/index.html‬‬ ‫هﺰﻳﻨﻪ درﻳﺎﻓﺖ اﻳﻦ ﮔﻮاهﻴﻨﺎﻣﻪ ٠٢ دﻻر در ﺱﺎل و ﻣﺮاﺣﻞ اﻥﺠﺎم ﺁن ﺑﺴﻴﺎر ﺱﺎدﻩ اﺱﺖ :‬ ‫١. در ﺱﺎﻳﺖ ﻣﺰﺑﻮر ، ﻳﮏ ﻓﺮم ﭘﺮ ﮐﻨﻴﺪ و در ﺁن اﻃﻼﻋﺎت ﺧﻮاﺱﺘﻪ ﺷﺪﻩ ) از ﺟﻤﻠﻪ‬ ‫اﻃﻼﻋﺎت ﻣﺮﺑﻮط ﺑﻪ ﮐﺎرت اﻋﺘﺒﺎری ( را وارد ﮐﻨﻴﺪ .‬ ‫٢. ﺷﺮﮐﺖ ‪ Verisign‬ﮐﺪ ﺷﻨﺎﺱﺎﻳﯽ ﺷﻤﺎ را ﺑﺎ ﭘﺴﺖ اﻟﮑﺘﺮوﻥﻴﮏ ﺑﺮاﻳﺘﺎن ارﺱﺎل‬ ‫ﺧﻮاهﺪ ﮐﺮد .‬ ‫٣. ﺑﻪ ﺹﻔﺤﻪ ﻥﺼﺐ ﮔﻮاهﻴﻨﺎﻣﻪ رﻓﺘﻪ و ﮐﺪ ﺷﻨﺎﺱﺎﻳﯽ ﺧﻮد را وارد ﮐﻨﻴﺪ . اﻳﻦ ﮐﺎر ﺑﺎﻳﺪ‬ ‫در هﻤﺎن ﮐﺎﻣﭙﻴﻮﺗﺮی ﮐﻪ ﺗﻮﺱﻂ ﺁن ﮐﺪ ﺷﻨﺎﺱﺎﻳﯽ را ﮔﺮﻓﺘﻪ اﻳﺪ ، اﻥﺠﺎم ﺷﻮد .‬ ‫۴. ﮔﻮاهﻴﻨﺎﻣﻪ ﺑﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻓﺮﺱﺘﺎدﻩ ﺧﻮاهﺪ ﺷﺪ .‬ ‫هﻨﮕﺎم ﺛﺒﺖ ﮔﻮاهﻴﻨﺎﻣﻪ دو ﮔﺰﻳﻨﻪ در اﺧﺘﻴﺎر دارﻳﺪ : ذﺧﻴﺮﻩ ﮐﺮدن ﺁن در ﻳﮏ ﻓﺎﻳﻞ ﻳﺎ در‬ ‫رﺟﻴﺴﺘﺮی وﻳﻨﺪوز . ﺗﻮﺹﻴﻪ ﻣﯽ ﺷﻮد ﮔﻮاهﻴﻨﺎﻣﻪ ﺧﻮد را در ﻳﮏ ﻓﺎﻳﻞ و روی دﻳﺴﮏ‬ ‫ذﺧﻴﺮﻩ ﮐﻨﻴﺪ ﺗﺎ ﺑﺘﻮاﻥﻴﺪ ﺁن را از ﮔﺰﻥﺪ ﻥﺎﻣﺤﺮﻣﺎن ﺣﻔﻆ ﮐﻨﻴﺪ . در ﺣﻘﻴﻘﺖ ، دو ﻓﺎﻳﻞ ﺑﻪ‬ ‫ﮐﺎﻣﭙﻴﻮﺗﺮ ﺷﻤﺎ ﻓﺮﺱﺘﺎدﻩ ﻣﯽ ﺷﻮد : ﻳﮑﯽ ﺣﺎوی ﺧﻮد ﮔﻮاهﻴﻨﺎﻣﻪ ) ﺑﺎ ﭘﺴﻮﻥﺪ ( ‪ SPC‬و‬ ‫دﻳﮕﺮی ﺣﺎوی ﮐﻠﻴﺪ رﻣﺰﺑﻨﺪی ) ﺑﺎ ﭘﺴﻮﻥﺪ ( ‪. PVK‬‬ ‫ﻧﺮم اﻓﺰارهﺎی ﻣﻮرد ﻧﻴﺎز ﺑﺮای اﻣﻀﺎی دﻳﺠﻴﺘﺎﻟﯽ :‬ ‫ﺑﻌﺪ از درﻳﺎﻓﺖ ﮐﺪ ﺗﻌﻴﻴﻦ اﻋﺘﺒﺎر و ﮐﻠﻴﺪ رﻣﺰ ﺑﻨﺪی ، ﺁﻣﺎدﻩ اﻳﺪ ﺗﺎ اﻣﻀﺎی ﺧﻮد را ﺑﻪ ﻥﺮم‬ ‫اﻓﺰارهﺎﻳﯽ ﮐﻪ ﻥﻮﺷﺘﻪ اﻳﺪ اﺽﺎﻓﻪ ﮐﻨﻴﺪ . اﻳﻦ ﺑﺮﻥﺎﻣﻪ هﺎ ﺟﺰﻳﯽ از ﮐﻴﺖ ﺗﻮﺱﻌﻪ ﻥﺮم اﻓﺰار‬ ‫‪ Activex‬هﺴﺘﻨﺪ و ﻣﯽ ﺗﻮاﻥﻴﺪ ﺁﻥﻬﺎ را ﻣﺠﺎﻥﯽ از ﺱﺎﻳﺖ ﻣﻴﮑﺮوﺱﺎﻓﺖ ﺑﺮدارﻳﺪ . ﻓﺎﻳﻞ هﺎﻳﯽ‬ ‫ﮐﻪ ﻥﻴﺎز دارﻳﺪ از اﻳﻦ ﻗﺮارﻥﺪ :‬ ‫31‬
  • 14. ‫• ‪ :Make Cert‬ﻳﮏ ﮔﻮاهﻴﻨﺎﻣﻪ 905.‪ X‬ﺑﺮای ﺗﺴﺖ ﻣﯽ ﺱﺎزد.‬ ‫• ‪ :Cert2 SPC‬ﻳﮏ ﮔﻮاهﻴﻨﺎﻣﻪ ﺗﻮزﻳﻊ ﻥﺮم اﻓﺰار ﺁزﻣﺎﻳﺸﯽ ﻣﯽ ﺱﺎزد.‬ ‫• ‪ :Sing Code‬ﻳﮏ ﻓﺎﻳﻞ ﻣﺤﺘﻮﻳﺎت ﻓﻌﺎل را اﻣﻀﺎ ﻣﯽ ﮐﻨﺪ.‬ ‫• ‪ : Chk Trust‬اﻋﺘﺒﺎر ﻓﺎﻳﻞ را ﺑﺮرﺱﯽ ﻣﯽ ﮐﻨﺪ ) ﻣﺸﺎﺑﻪ هﻤﺎن ﮐﺎری ﮐﻪ ﮐﺎوﺷﮕﺮ‬ ‫ﻣﯽ ﮐﻨﺪ (‬ ‫• ‪ :Make CTL‬ﻟﻴﺴﺘﯽ از ﮔﻮاهﻴﻨﺎﻣﻪ هﺎی ﻗﺎﺑﻞ اﻋﺘﻤﺎد ﻣﯽ ﺱﺎزد.‬ ‫• ‪ :Cert Mgr‬ﺑﺮﻥﺎﻣﻪ ﻣﺪﻳﺮﻳﺖ ﮔﻮاهﻴﻨﺎﻣﻪ هﺎ ، ﻟﻴﺴﺖ هﺎی ﮔﻮاهﻴﻨﺎﻣﻪ هﺎی ﻗﺎﺑﻞ‬ ‫اﻋﺘﻤﺎد و ﺑﺎﻃﻞ ﺷﺪﻩ.‬ ‫• ‪ :Set Reg‬ﺑﺮﻥﺎﻣﻪ ﺛﺒﺖ ﮔﻮاهﻴﻨﺎﻣﻪ در رﺟﻴﺴﺘﺮی.‬ ‫ﺑﺎﻳﺪ ﺗﻮﺟﻪ داﺷﺖ ﮐﻪ ﺗﻤﺎم اﻳﻦ اﺑﺰارهﺎ ﺑﺮﻥﺎﻣﻪ هﺎی ‪ DOS‬هﺴﺘﻨﺪ و ﺑﺎﻳﺪ ﭘﻨﺠﺮﻩ -‪MS‬‬ ‫‪ DOS‬اﺟﺮا ﺷﻮﻥﺪ . ﺑﺮای ﺑﺎز ﮐﺮدن ﻥﺮم اﻓﺰارهﺎی ﻓﻮق ﻣﯽ ﺗﻮاﻥﻴﺪ ﺑﻪ ﺁدرس زﻳﺮ‬ ‫ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬ ‫‪http://www.msdn.microsoft.com‬‬ ‫ﺟﺎوا چﻴﺴﺖ ؟‬ ‫ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﺱﺖ ﮐﻪ در اواﻳﻞ دهﻪ ٠٩ ﺗﻮﺱﻂ ‪ ، Java Soft‬ﺑﺨﺶ‬ ‫ﻥﺮم اﻓﺰاری ﺷﺮﮐﺖ ‪ Sun‬ﺗﻮﺱﻌﻪ دادﻩ ﺷﺪ . هﺪف ﺁن ﺑﻮد ﮐﻪ ﺟﺎوا زﺑﺎﻥﯽ ﺱﺎدﻩ ، ﻗﻮی و‬ ‫هﻤﻪ ﻣﻨﻈﻮرﻩ ﺑﺎﺷﺪ . ﺟﺎوا ﺗﻤﺎم ﺟﻨﺒﻪ هﺎی ﻣﺜﺒﺖ ‪ C‬و ++‪ C‬را در ﺧﻮد دارد ، و ﺁن‬ ‫چﻴﺰهﺎﻳﯽ ﮐﻪ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن ++‪ C‬از ﺁن ﻥﻔﺮت داﺷﺘﻪ اﻥﺪ ) ﻣﺎﻥﻨﺪ وراﺛﺖ چﻨﺪ ﮔﺎﻥﻪ ،‬ ‫ﺗﺤﺮﻳﻒ اﭘﺮاﺗﻮرهﺎ و اﺷﺎرﻩ ﮔﺮهﺎ ( را ﺑﻪ ﮐﻨﺎری ﮔﺬاﺷﺘﻪ اﺱﺖ .‬ ‫ﻣﻬﻤﺘﺮﻳﻦ وﻳﮋﮔﻴﻬﺎی ﺟﺎوا اﻳﻦ اﺱﺖ ﮐﻪ اﺱﺎﺱﺎ ﺷﯽء ﮔﺮا اﺱﺖ . اوﻟﻴﻦ ادﻋﺎی ‪OOP‬‬ ‫ً‬ ‫ﺗﻮاﻥﺎﻳﯽ اﺱﺘﻔﺎدﻩ ﻣﺠﺪد از ﮐﺪ اﺱﺖ : چﻴﺰی ﮐﻪ ++‪ C‬ﺑﺎ ﺗﻤﺎم ادﻋﺎهﺎﻳﺶ هﺮﮔﺰ ﻥﺘﻮاﻥﺴﺖ‬ ‫ﺑﺪان دﺱﺖ ﻳﺎﺑﺪ . اﻣﺎ در اوﻟﻴﻦ ﻗﺪم ﺧﻮاهﻴﺪ دﻳﺪ ﺟﺎوا در اﻳﻦ زﻣﻴﻨﻪ ﺗﺎ چﻪ ﺣﺪ اﻥﺪازﻩ‬ ‫ﺹﺤﺖ دارد . ﺗﺼﻮرش را ﺑﮑﻨﻴﺪ ﮐﻪ ﺑﺎ ﺹﺮف ﮐﻤﯽ وﻗﺖ ﺑﺘﻮاﻥﻴﺪ ﺑﺮﻥﺎﻣﻪ ای ﺑﻨﻮﻳﺴﻴﺪ ﮐﻪ‬ ‫در ﺱﻴﺴﺘﻢ هﺎی وﻳﻨﺪوز ، ﻳﻮﻥﻴﮑﺲ و ﻣﮑﻴﻨﺘﺎش ﺑﺮاﺣﺘﯽ اﺟﺮا ﺷﻮد . هﻤﻴﻦ ﮐﻪ ﻳﮏ ﺷﺮﮐﺖ‬ ‫ﻥﺮم اﻓﺰاری ﺑﺘﻮاﻥﺪ ﺑﺮای ﺗﻤﺎم ﭘﻼﺗﻔﺮم هﺎی ﻣﻮﺟﻮد در ﺁن واﺣﺪ ﭘﺮوژﻩ ای را ﺗﻮﻟﻴﺪ ﮐﻨﺪ‬ ‫) و ﻣﻘﺎدﻳﺮ ﻋﻈﻴﻤﯽ ﭘﻮل ﺹﺮﻓﻪ ﺟﻮﻳﯽ ﮐﻨﺪ ( ﺧﻮد ﻣﯽ ﺗﻮاﻥﺪ ﺑﻬﺘﺮﻳﻦ دﻟﻴﻞ اﻗﺒﺎل ﺟﺎوا ﺑﺎﺷﺪ‬ ‫و اﻣﺮوز دﻳﮕﺮ هﻤﻪ ) و ﻥﻪ ﻓﻘﻂ ﺷﺮﮐﺘﻬﺎی ﻥﺮم اﻓﺰاری ( ﺑﻪ ﺱﻤﺖ ﺟﺎوا ﮐﺸﻴﺪﻩ ﺷﺪﻩ اﻥﺪ .‬ ‫ﺑﺎ اﻳﻦ وﻳﮋﮔﯽ ) اﺱﺘﻘﻼل از ﭘﻼﺗﻔﺮم ( ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺲ ﻣﯽ ﺗﻮاﻥﺪ ﺑﺮای ﺱﻴﺴﺘﻤﯽ ﺑﺮﻥﺎﻣﻪ‬ ‫ﺑﻨﻮﻳﺴﺪ ﮐﻪ هﺮﮔﺰ ﺑﺎ ﺁن ﮐﺎر ﻥﮑﺮدﻩ اﺱﺖ . اﻳﻦ وﻳﮋﮔﯽ اﺹﻠﯽ ﺗﺮﻳﻦ ﻋﻠﺖ ﺗﻮﻓﻴﻖ ﺟﺎوا در‬ ‫اﻳﻨﺘﺮﻥﺖ اﺱﺖ . اﻳﻨﺘﺮﻥﺖ ﺷﺒﮑﻪ ﭘﻴﭽﻴﺪﻩ ای اﺱﺖ از ﻣﻴﻠﻴﻮﻥﻬﺎ ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﺨﺘﻠﻒ در ﺱﺮاﺱﺮ‬ ‫دﻥﻴﺎ ، و ﻣﻘﺎوﻣﺖ در ﻣﻘﺎﺑﻞ اﻳﻦ وﺱﻮﺱﻪ ﮐﻪ ﺑﺘﻮاﻥﺪ ﺑﺮﻥﺎﻣﻪ ای ﺑﻨﻮﻳﺴﺪ ﮐﻪ روی ﺗﻤﺎم اﻳﻦ‬ ‫ﺱﻴﺴﺘﻢ هﺎی ﻣﺘﻔﺎوت و ﻥﺎ ﻣﺘﺠﺎﻥﺲ اﺟﺮا ﺷﻮد چﻨﺪان ﺱﺎدﻩ ﻥﻴﺴﺖ .‬ ‫ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺴﻴﺎر ﺱﺎدﻩ اﺱﺖ چﻮن ﺷﻤﺎ را وادار ﻥﻤﯽ ﮐﻨﺪ ﺗﺎ در ﻣﺤﻴﻂ ﺟﺪﻳﺪ ) و ﻥﺎ‬ ‫ﺁﺷﻨﺎﻳﯽ ( ﮐﺎر ﮐﻨﻴﺪ و اﻳﻦ ﺑﺮای ﮐﺴﺎﻥﯽ ﮐﻪ اﻃﻼﻋﺎت ﻓﻨﯽ ﻥﺎچﻴﺰی درﺑﺎرﻩ ﮐﺎﻣﭙﻴﻮﺗﺮ دارﻥﺪ‬ ‫41‬
  • 15. ‫ﺑﺴﻴﺎر ﻣﻬﻢ اﺱﺖ . ﺱﺎﺧﺘﺎر زﺑﺎن ﺟﺎوا در ﻥﮕﺎﻩ اول ﺑﺴﻴﺎر ﺷﺒﻴﻪ ‪ C‬و ++‪ C‬اﺱﺖ و اﻳﻦ ﺑﻪ‬ ‫هﻴﭻ وﺟﻪ ﺗﺼﺎدﻓﯽ ﻥﻴﺴﺖ . ‪ C‬زﺑﺎﻥﯽ اﺱﺖ ﺱﺎﺧﺖ ﻳﺎﻓﺘﻪ و ++‪ C‬زﺑﺎﻥﻴﺴﺖ ﺷﯽء ﮔﺮا و‬ ‫ﻣﻬﻤﺘﺮ از هﻤﻪ ﻗﺴﻤﺖ اﻋﻈﻢ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن دﻥﻴﺎ از ﺁﻥﻬﺎ اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ از ﺱﻮی دﻳﮕﺮ‬ ‫اﻳﻦ ﺷﺒﺎهﺖ ﺣﺮﮐﺖ ﺑﻪ ﻃﺮف ﺟﺎوا را ﺑﺮای اﻳﻦ ﻗﺒﻴﻞ اﻓﺮاد ﺱﺎدﻩ ﺧﻮاهﺪ ﮐﺮد ﺑﻨﺎﺑﺮاﻳﻦ‬ ‫ﻃﺮاﺣﺎن ﺟﺎوا ﺑﺮای اﺟﺘﻨﺎب از دوﺑﺎرﻩ ﮐﺎری از زﺑﺎﻥﻬﺎی ‪ C‬و ++‪ C‬ﺑﻌﻨﻮان ﻣﺪل‬ ‫اﺱﺘﻔﺎدﻩ ﮐﺮدﻥﺪ .‬ ‫ﺟﺎوا ﺑﺎ دور اﻥﺪاﺧﺘﻦ اﺷﺎرﻩ ﮔﺮهﺎ و ﺑﺮ دوش ﮐﺸﻴﺪن ﺑﺎر ﻣﺪﻳﺮﻳﺖ ﺣﺎﻓﻈﻪ ، ﺑﺮﻥﺎﻣﻪ‬ ‫ﻥﻮﻳﺴﺎن ‪ C‬و ++‪ C‬را ﺑﺮای هﻤﻴﺸﻪ از اﻳﻦ ﮐﺎﺑﻮس هﺎ رهﺎﻳﯽ ﺑﺨﺸﻴﺪﻩ اﺱﺖ .‬ ‫ﻋﻼﻩ ﺑﺮ ﺁن چﻮن ﺟﺎوا زﺑﺎﻥﯽ ﺑﺮای اﻳﻨﺘﺮﻥﺖ اﺱﺖ ، از اﻳﻤﻨﯽ و ﺣﻔﺎﻇﺖ ذاﺗﯽ ﺑﺎﻻﻳﯽ‬ ‫ﺑﺮﺧﻮردار اﺱﺖ . ﻃﺮاﺣﺎن ﺟﺎوا از اﺑﺘﺪا ﻳﮏ ﻣﺤﻴﻂ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﻣﻦ را ﻣﺪ ﻥﻈﺮ‬ ‫داﺷﺘﻪ اﻥﺪ . ﻣﺴﺌﻠﻪ ﺣﻔﺎﻇﺖ ﺱﻴﺴﺘﻢ هﺎ راﺑﻄﻪ ﺗﻨﮕﺎﺗﻨﮕﯽ ﺑﺎ اﺷﺎرﻩ ﮔﺮهﺎ دارد .‬ ‫اﮐﺜﺮ ﻣﻬﺎﺟﻤﺎن ﺑﺮای ورود ﻏﻴﺮ ﻗﺎﻥﻮﻥﯽ ﺑﻪ ﺱﻴﺴﺘﻢ هﺎی دﻳﮕﺮان از اﻳﻦ اﺷﺎرﻩ ﮔﺮهﺎ‬ ‫اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ و ﺟﺎوا ﺑﺎ ﺣﺬف اﺷﺎرﻩ ﮔﺮهﺎ اﻳﻦ راﻩ را ﺱﺪ ﮐﺮدﻩ اﺱﺖ .‬ ‫ﺟﺎوا ﻣﮑﺎﻥﻴﺰم هﺎی ﺣﻔﺎﻇﺘﯽ دﻳﮕﺮی هﻢ دارد ﮐﻪ در ﺟﺎی ﺧﻮد ﺑﻪ ﺁﻥﻬﺎ اﺷﺎرﻩ ﺧﻮاهﻴﻢ‬ ‫ﮐﺮد .‬ ‫ﺕﮑﺎﻣﻞ ﺟﺎوا :‬ ‫ﺟﺎوا هﻢ ﻣﺎﻥﻨﺪ اﮐﺜﺮ اﺧﺘﺮاﻋﺎت ﻣﻬﻢ ﺣﺎﺹﻞ ﺗﻼش ﮔﺮوهﯽ داﻥﺸﻤﻨﺪان ﭘﻴﺸﺘﺎز اﺱﺖ . اﻣﺎ‬ ‫ﻥﮑﺘﻪ ﺟﺎﻟﺐ درﺑﺎرﻩ ﺟﺎوا ﺁن اﺱﺖ ﮐﻪ ﺟﺎوا از وﻳﺮاﻥﻪ هﺎی ﻳﮏ ﭘﺮوژﻩ ﺷﮑﺴﺖ ﺧﻮردﻩ‬ ‫ﺱﺮ ﺑﺮ ﻣﯽ ﺁورد .‬ ‫اﮔﺮ ﭘﺮوژﻩ ﮔﺮﻳﻦ )‪ (Green‬ﮐﻪ ﺷﺮﮐﺖ ‪ Sun‬در ﺱﺎل ١٩٩١ ﺁن را ﺷﺮوع ﮐﺮد ﺑﻪ‬ ‫ﻣﻮﻓﻘﻴﺖ ﻣﯽ اﻥﺠﺎﻣﻴﺪ اﻣﺮوز ﻥﻪ ﺱﺎن دﻳﮕﺮ ﻳﮏ ﺷﺮﮐﺖ ﮐﺎﻣﭙﻴﻮﺗﺮی ﻣﯽ ﺑﻮد و ﻥﻪ ﺟﺎوا در‬ ‫ﺱﺎل ١٩٩١ ، ﺷﺮﮐﺖ ‪ Sun Microsystems‬در ﺁﻏﺎز راﻩ ﺗﺒﺪﻳﻞ ﺷﺪن ﺑﻪ ﺑﺰرﮔﺘﺮﻳﻦ‬ ‫ﺗﻮﻟﻴﺪ ﮐﻨﻨﺪﻩ اﻳﺴﺘﮕﺎهﻬﺎی ﮐﺎری ‪ Unix‬ﺑﻮد و در ﻃﻮل ﻓﻘﻂ ﭘﻨﺞ ﺱﺎل درﺁﻣﺪش را از ٠١٢‬ ‫ﻣﻴﻠﻴﻮن دﻻر ﺑﻪ ۵/٢ ﻣﻴﻠﻴﺎرد دﻻر رﺱﺎﻥﺪﻩ ﺑﻮد و ﺑﻪ ﻥﻈﺮ ﻣﯽ رﺱﺪ هﻴﭻ چﻴﺰ ﻥﻤﯽ ﺗﻮاﻥﺪ‬ ‫ﺟﻠﻮدار ﺁن ﺑﺎﺷﺪ . ﻋﺎﻣﻞ ﻋﻤﺪﻩ ﻣﻮﻓﻘﻴﺖ ‪ Sun‬ﮐﺎرهﺎی ﭘﻴﺸﺘﺎزاﻥﻪ در اﻳﺠﺎد ﺷﺒﮑﻪ هﺎی ﺑﺎز‬ ‫ﺑﻮد و در اﻳﻦ زﻣﻴﻨﻪ هﻴﭻ ﮐﺲ ﺑﻪ ﭘﺎی ﺁن ﻥﻤﯽ رﺱﻴﺪ .‬ ‫ﻣﺪﻳﺮان ‪ Sun‬ﺑﻪ اﻳﻦ ﻓﮑﺮ اﻓﺘﺎدﻥﺪ ﺗﺎ ﮐﺎری ﮐﻨﻨﺪ ﮐﻪ اﻳﻦ رﺷﺪ ﺑﺮای ﻣﺪﺗﯽ ﻃﻮﻻﻥﯽ اداﻣﻪ‬ ‫ﻳﺎﺑﺪ ﻳﮑﯽ از زﻣﻴﻨﻪ هﺎی ﻣﻮرد ﻋﻼﻗﻪ ‪ Sun‬ﺑﺎزار ﻟﻮازم اﻟﮑﺘﺮوﻥﻴﮑﯽ ﺑﻮد ، ﭘﺮوژﻩ‬ ‫‪ Green‬ﺑﻮﺟﻮد ﺁﻣﺪ ﺗﺎ ﺑﺮای اﻳﻦ ﺑﺎزار ﻥﺮم اﻓﺰاری ﭘﻴﺸﺮﻓﺘﻪ ﺧﻠﻖ ﮐﻨﺪ .‬ ‫ﻣﻬﻨﺪﺱﺎن ‪ Sun‬ﺗﻮﺟﻪ ﺧﻮد را ﺑﻪ ﻣﻴﮑﺮوﭘﺮوﺱﺴﻮرهﺎﻳﯽ ﻣﻌﻄﻮف ﮐﺮدﻥﺪ ﺗﺎ دارای ﻗﺎﺑﻠﻴﺖ‬ ‫اﺱﺘﻔﺎدﻩ در اﻳﻦ ﮔﻮﻥﻪ ﺱﻴﺴﺘﻢ هﺎ ﺑﺎﺷﻨﺪ . اﮔﺮ ﭘﺮوژﻩ ‪ Green‬ﻣﯽ ﺧﻮاﺱﺖ ﻣﻮﻓﻖ ﺑﺎﺷﺪ ﺑﺎﻳﺪ‬ ‫ﮐﺎری ﻣﯽ ﮐﺮد ﺗﺎ ﺱﻴﺴﺘﻢ ﻣﺰﺑﻮر ﺑﺘﻮاﻥﺪ ﺑﻪ راﺣﺘﯽ ﺑﻪ ﺑﺴﺘﺮهﺎی ﺱﺨﺖ اﻓﺰاری ﻣﺨﺘﻠﻒ‬ ‫ﻣﻨﺘﻘﻞ ﺷﻮد ﺑﺮای اﻳﻦ ﻣﻨﻈﻮر اﺑﺘﺪا از ﮐﺎﻣﭙﺎﻳﻠﺮ ++‪ C‬اﺱﺘﻔﺎدﻩ ﺷﺪ وﻟﯽ ﺑﺰودی ﻥﺎرﺱﺎﻳﯽ‬ ‫هﺎی ++‪ C‬در اﻳﻦ زﻣﻴﻨﻪ ﺧﻮد را ﻥﺸﺎن دادﻥﺪ . ﻣﻬﻨﺪﺱﺎن ‪ Sun‬ﺧﻴﻠﯽ ﺱﺮﻳﻊ درﻳﺎﻓﺘﻨﺪ ﮐﻪ‬ ‫ﺑﺮای اداﻣﻪ ﮐﺎر ﺑﺎﻳﺪ چﻴﺰی ﺟﺪﻳﺪ و ﻗﻮی ﺧﻠﻖ ﮐﻨﻨﺪ . در هﻤﻴﻦ زﻣﺎن ﺑﻮد ﮐﻪ ‪James‬‬ ‫51‬
  • 16. ‫‪ Gosling‬ﮐﺎر ﺑﺮ روی زﺑﺎن ﺟﺪﻳﺪ اوک ‪ Oak‬را ﺷﺮوع ﮐﺮد ﺗﻘﺪﻳﺮ ﺁن ﺑﻮد ﮐﻪ اﻳﻦ‬ ‫زﺑﺎن ﺟﺎوا ﻥﺎﻣﻴﺪﻩ ﺷﻮد ، چﻮن ادارﻩ ﺛﺒﺖ ﻥﺎم هﺎی ﺗﺠﺎری ‪ Oak‬را رد ﮐﺮد .‬ ‫ﺑﺘﺪرﻳﺞ ﻣﻬﻨﺪﺱﻴﻦ ﻳﮏ دﺱﺘﮕﺎﻩ ﺷﺒﻪ ‪ ( Personal Digital Assistant ) PAD‬ﺱﺎﺧﺘﻨﺪ‬ ‫ﮐﻪ در ﺁن از ﺱﻴﺴﺘﻢ ﻋﺎﻣﻞ ، زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ و واﺱﻂ ﮐﺎرﺑﺮ ﺟﺎوا اﺱﺘﻔﺎدﻩ ﺷﺪﻩ ﺑﻮد و‬ ‫ﺑﺎ وﺟﻮد اﺑﺘﺪاﻳﯽ ﺑﻮدن ﺗﻮاﻥﺴﺖ ﺗﻮﺟﻪ ﻣﺪﻳﺮان ‪ Sun‬را ﺑﻪ ﺧﻮد ﺟﻠﺐ ﮐﻨﺪ .‬ ‫ﺑﻌﺪهﺎ ﮔﺮوهﯽ ﮐﻪ در ﭘﺮوژﻩ ‪ Green‬ﮐﺎر ﮐﺮدﻩ ﺑﻮدﻥﺪ ﺷﺮﮐﺖ ‪ Java Soft‬را ﺑﻨﻴﺎن‬ ‫ﻥﻬﺎدﻥﺪ .‬ ‫ﺷﮑﻞ زﻳﺮ ﭘﺎﻳﮕﺎﻩ وب اﻳﻦ ﺷﺮﮐﺖ را ﻥﺸﺎن ﻣﯽ دهﺪ :‬ ‫ﺑﺮای رﻓﺘﻦ ﺑﻪ اﻳﻦ ﭘﺎﻳﮕﺎﻩ اﻳﻨﺘﺮﻥﺘﯽ ﻣﯽ ﺑﺎﻳﺴﺖ ﺑﻪ ﺁدرس زﻳﺮ ﻣﺮاﺟﻌﻪ ﮐﻨﻴﺪ :‬ ‫‪http://www.sun.com‬‬ ‫ﻣﺘﺎﺱﻔﺎﻥﻪ ﺑﺨﺖ ﺑﺎ ﭘﺮوژﻩ ‪ Green‬ﻳﺎر ﻥﺒﻮد و ﺑﻌﺪ از چﻨﺪ ﺷﮑﺴﺖ ﻣﺘﻮاﻟﯽ ‪ Sun‬ﺁن را‬ ‫ﮐﻨﺎر ﮔﺬاﺷﺖ . در هﻤﻴﻦ زﻣﺎن ﺑﻮد ﮐﻪ ﻋﺪﻩ ای از ﻣﺤﻘﻘﺎن ‪ NCSA‬ﺷﺮﮐﺖ ‪Net Scape‬‬ ‫را ﺗﺎﺱﻴﺲ ﮐﺮدﻥﺪ و اﻳﻦ اﺗﻔﺎﻗﺎت ﺑﺎ ﺁﺗﺸﯽ ﮐﻪ ﺑﻪ ﺱﺮﻋﺖ دﻥﻴﺎ را در ﻣﯽ ﻥﻮردﻳﺪ و ﺷﺒﮑﻪ‬ ‫ﺗﺎر ﻋﻨﮑﺒﻮﺗﯽ ﺟﻬﺎﻥﯽ ‪) WWW‬ﮐﻪ ﻣﺨﻔﻒ ‪ World Width Web‬ﻣﯽ ﺑﺎﺷﺪ( ﻥﺎم داﺷﺖ‬ ‫هﻤﺰﻣﺎن ﺷﺪ .‬ ‫ﺑﻨﺎﺑﺮاﻳﻦ اﺗﻔﺎﻗﯽ ﻥﺒﻮد ﮐﻪ ﻣﻬﻨﺪﺱﺎن ﭘﺮوژﻩ ‪ Green‬ﺑﻪ ﺱﻤﺖ اﻳﻨﺘﺮﻥﺖ و وب ﺑﻪ ﻋﻨﻮان‬ ‫ﺑﺴﺘﺮ ﭘﺮوژﻩ ‪ Sun‬رواﻥﻪ ﺷﻮﻥﺪ و ﺑﻌﺪ از ﺁن دﻳﮕﺮ ﺟﺰء ﺗﺎرﻳﺦ اﺱﺖ .‬ ‫چﻬﺎر ﺱﺎل ﺑﻌﺪ ﭘﺮوژﻩ ‪ Green‬ﺑﻪ ﺑﺎر ﻥﺸﺴﺖ و ﺟﺎوا ﺗﺒﺪﻳﻞ ﺑﻪ داﻏﺘﺮﻳﻦ ﻣﻮﺽﻮع اﻳﻨﺘﺮﻥﺖ‬ ‫ﺷﺪ ، هﻤﻪ از ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﺎن و ﻃﺮاﺣﺎن ﺹﻔﺤﺎت وب ﮔﺮﻓﺘﻪ ﺗﺎ ﮐﺎرﺑﺮان اﻳﻨﺘﺮﻥﺖ ﻣﯽ‬ ‫ﺧﻮاهﻨﺪ از ﺟﺎوا اﺱﺘﻔﺎدﻩ ﮐﻨﻨﺪ . ‪ Sun‬ﺑﻼﻓﺎﺹﻠﻪ ﺑﺮای ﺟﺎوا ﻳﮏ ﮐﺎوﺷﮕﺮ هﻢ ﺗﻮﻟﻴﺪ‬ ‫61‬
  • 17. ‫ﮐﺮد .اﻳﻦ اوﻟﻴﻦ ﮐﺎوﺷﮕﺮی ﺑﻮد ﮐﻪ ﻣﯽ ﺗﻮاﻥﺴﺖ اﭘﻠﺖ هﺎی ﺟﺎوا را اﺟﺮا ﮐﻨﺪ و ﻥﺎم ﺁن هﻢ‬ ‫‪ Hot Java‬ﺑﻮد .‬ ‫وﻳﮋﮔﻴﻬﺎی زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ‪: Java‬‬ ‫ﺟﺎوا وﻳﮋﮔﻴﻬﺎی ﻣﺘﻌﺪدی دارد ﮐﻪ ﺁن را ﻣﻨﺤﺼﺮﺑﻪ ﻓﺮد ﮐﺮدﻩ اﺱﺖ . ﺟﺎوا هﻢ ﮐﺎﻣﭙﺎﻳﻠﺮ‬ ‫دارد و اﻳﻨﺘﺮﭘﺮﺗﺮ .‬ ‫ﺗﻮﺽﻴﺢ : ) ﮐﺎﻣﭙﺎﻳﻠﺮ ﺑﺮﻥﺎﻣﻪ ای اﺱﺖ ﮐﻪ ﻣﺘﻦ ﺑﺮﻥﺎﻣﻪ را ﮔﺮﻓﺘﻪ و در ﭘﺎﻳﺎن ﻳﮏ ﻓﺎﻳﻞ ‪exe‬‬ ‫ﺗﻮﻟﻴﺪ ﻣﯽ ﮐﻨﺪ . ﺑﻌﺪ از ﮐﺎﻣﭙﺎﻳﻞ ﺷﺪن ﻳﮏ ﺑﺮﻥﺎﻣﻪ ، دﻳﮕﺮ ﺑﻪ وﺟﻮد ﮐﺎﻣﭙﺎﻳﻠﺮ ﻥﻴﺎزی ﻥﻴﺴﺖ‬ ‫و ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ ‪ exe‬را روی هﺮ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺱﺎزﮔﺎری اﺟﺮا ﮐﺮد . اﻣﺎ اﻳﻨﺘﺮﭘﺮﺗﺮ هﻴﭻ‬ ‫ﺑﺮﻥﺎﻣﻪ ‪ exe‬ای ﺗﻮﻟﻴﺪ ﻥﻤﯽ ﮐﻨﺪ و ﺑﺮﻥﺎﻣﻪ را ﺧﻂ ﺑﻪ ﺧﻂ اﺟﺮا ﻣﯽ ﮐﻨﺪ ، ﺑﺮای اﺟﺮای‬ ‫ﺑﺮﻥﺎﻣﻪ ﺣﺘﻤﺎ ﺑﺎﻳﺪ اﻳﻨﺘﺮﭘﺮﺗﺮ هﻢ روی ﮐﺎﻣﭙﻴﻮﺗﺮ ﻣﻮرد ﻥﻈﺮ ﻣﻮﺟﻮد ﺑﺎﺷﺪ ( .‬ ‫هﺮ ﮐﺎﻣﭙﺎﻳﻠﺮ ﻓﻘﻂ ﺑﺮای ﻳﮏ ﺱﻴﺴﺘﻢ ﺧﺎص ) ﻣﺎﻥﻨﺪ اﻳﻨﺘﻞ ، اﭘﻞ ﻳﺎ ﺁﻟﻔﺎ ( ﻣﯽ ﺗﻮاﻥﺪ ﮐﺪ‬ ‫اﺟﺮاﻳﯽ ﺗﻮﻟﻴﺪ ﮐﻨﺪ اﻣﺎ ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا ﮐﺪ اﺟﺮاﻳﯽ ‪ Exe‬ﺗﻮﻟﻴﺪ ﻥﻤﯽ ﮐﻨﺪ و در ﻋﻮض ﻳﮏ‬ ‫ﻓﺎﻳﻞ ﺑﻴﻨﺎﺑﻴﻨﯽ ﻣﯽ ﺱﺎزد ﮐﻪ ﺑﺎﻳﺖ ﮐﺪ ‪ Byte code‬ﻥﺎم دارد و ﺑﺎﻳﺖ ﮐﺪ چﻴﺰی ﺷﺒﻴﻪ زﺑﺎن‬ ‫اﺱﻤﺒﻠﯽ اﺱﺖ ، اﻣﺎ اﻳﻦ زﺑﺎن ﻣﺨﺘﺺ هﻴﭻ ﭘﺮوﺱﺴﻮر ﺧﺎﺹﯽ ﻥﻴﺴﺖ ﺑﻠﮑﻪ زﺑﺎن اﺱﻤﺒﻠﯽ‬ ‫ﻳﮏ ﻣﺎﺷﻴﻦ وﻳﮋﻩ ﺑﻨﺎم ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺟﺎوا )‪ ( Java Virtual Mashing‬دارد ﮐﻪ روی‬ ‫ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺟﺎوا اﺟﺮا ﻣﯽ ﺷﻮد ، دﺱﺘﻮرات ﻓﺎﻳﻞ ﺑﺎﻳﺖ ﮐﺪ را ﺑﻪ دﺱﺘﻮرات ﻗﺎﺑﻞ ﻓﻬﻢ‬ ‫ﺑﺮای ﭘﺮوﺱﺴﻮری ﮐﻪ روی ﺁن اﺟﺮا ﻣﯽ ﺷﻮد ﺗﺒﺪﻳﻞ ﺧﻮاهﺪ ﮐﺮد .‬ ‫ﺑﺮﻥﺎﻣﻪ هﺎی ﮐﺎرﺑﺮدی ﺟﺎوا‬ ‫اﺷﻴﺎء ﺟﺎوا‬ ‫ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺟﺎوا‬ ‫ﻳﻮﻥﻴﮑﺲ‬ ‫وﻳﻨﺪوز ﻳﺎ‬ ‫ﻣﮑﻴﻨﺘﺎش‬ ‫2‪Os‬‬ ‫ﺱﻴﺴﺘﻢ ﻋﺎﻣﻞ‬ ‫اﻣﺎ ﺷﺎﻳﺪ از ﺧﻮد ﺱﺌﻮال ﮐﻨﻴﺪ ﮐﻪ چﺮا ﺟﺎوا اﻳﻦ هﻤﻪ ﮐﺎر را ﺑﺮ ﺧﻮد ) و دﻳﮕﺮان ( ﺱﺨﺖ‬ ‫ﮔﺮﻓﺘﻪ اﺱﺖ ؟ اﻳﻦ هﻤﻪ ﻻﻳﻪ و ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﺑﺮای چﻴﺴﺖ ؟ ﻳﮑﯽ از ادﻋﺎهﺎی ﺟﺎوا ،‬ ‫ﺁزاد ﺑﻮدن از ﺑﺴﺘﺮ ﺱﺨﺖ اﻓﺰاری اﺱﺖ اﻣﺎ اﻳﻦ ﻳﻌﻨﯽ چﻪ ؟ اﮔﺮ ﺟﺎوا ﺑﺨﻮاهﺪ در اﻳﻨﺘﺮﻥﺖ‬ ‫ﻣﻮﻓﻖ ﺑﺎﺷﺪ ﺑﺮﻥﺎﻣﻪ هﺎی ﺁن ﺑﺎﻳﺪ ﺑﺘﻮاﻥﻨﺪ ﺑﺪون هﻴﭻ اﺷﮑﺎﻟﯽ روی ﺗﻤﺎم ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی‬ ‫ﻣﺘﺼﻞ ﺑﻪ اﻳﻨﺘﺮﻥﺖ اﺟﺮا ﺷﻮﻥﺪ . اﻣﺎ ﺷﻤﺎ ﺑﻬﺘﺮ ﻣﯽ داﻥﻴﺪ ﮐﻪ اﻳﻨﺘﺮﻥﺖ ﺷﺒﮑﻪ ﻋﻈﻴﻤﯽ اﺱﺖ‬ ‫از ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی ﻥﺎﻣﺘﺠﺎﻥﺲ ، از ﺱﻮﭘﺮ ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی ﻋﻈﻴﻢ ﮔﺮﻓﺘﻪ ﺗﺎ ‪ PC‬هﺎی ﻣﺒﺘﻨﯽ ﺑﺮ‬ ‫71‬
  • 18. ‫روﺱﺴﻮر هﺎی اﻳﻨﺘﻞ و ﭘﺎور ﭘﯽ ﺱﯽ ﺗﺎ ﻣﺎﺷﻴﻦ هﺎی ﻳﻮﻥﻴﮑﺲ ﻣﺒﺘﻨﯽ ﺑﺮ ﭘﺮوﺱﺴﻮرهﺎی ﺁﻟﻔﺎ‬ ‫و ... !‬ ‫چﮕﻮﻥﻪ ﻳﮏ ﺑﺮﻥﺎﻣﻪ اﺟﺮاﻳﯽ ﻣﯽ ﺗﻮاﻥﺪ روی اﻳﻦ ﻃﻴﻒ وﺱﻴﻊ ﮐﺎﻣﭙﻴﻮﺗﺮهﺎ اﺟﺮا ﺷﻮد ؟‬ ‫اﻳﺪﻩ اوﻟﻴﻪ ﺱﺎدﻩ اﺱﺖ : ﺑﺮﻥﺎﻣﻪ هﺎ ﺑﺮای ﻣﺎﺷﻴﻦ ﻣﺠﺎزی ﮐﺎﻣﭙﺎﻳﻞ ﺷﻮﻥﺪ و اﻳﻦ ﻣﺎﺷﻴﻦ‬ ‫ﻣﺠﺎزی روی ﺗﻤﺎم ﮐﺎﻣﭙﻴﻮﺗﺮهﺎی ﻣﺘﺼﻞ ﺑﻪ اﻳﻨﺘﺮﻥﺖ ﻥﺼﺐ ﺷﻮد .‬ ‫اﻳﻦ دﻗﻴﻘﺎ هﻤﺎن روﺷﯽ اﺱﺖ ﮐﻪ ﺟﺎوا در ﭘﻴﺶ ﮔﺮﻓﺘﻪ اﺱﺖ . ﺑﺮﻥﺎﻣﻪ ﺗﺎن را ﺑﺎ ﻳﮏ‬ ‫ً‬ ‫ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا ﮐﺎﻣﭙﺎﻳﻞ ﮐﻨﻴﺪ ، ﺁن را در ﭘﺎﻳﮕﺎﻩ وب ﺧﻮد ﻗﺮار دهﻴﺪ و ﺑﻪ دﻳﮕﺮان اﻃﻼع‬ ‫دهﻴﺪ ﺗﺎ ﺑﺎ ﻳﮏ ﮐﺎوﺷﮕﺮ ﻣﺠﻬﺰ ﺑﻪ ﺟﺎوا ) ‪ (Java – Enabled Brower‬اﻳﻦ ﺑﺮﻥﺎﻣﻪ را‬ ‫ﮐﻪ ﻣﻤﮑﻦ اﺱﺖ در دل ﻳﮏ ﺹﻔﺤﻪ وب ﻗﺮار داﺷﺘﻪ ﺑﺎﺷﺪ اﺟﺮا ﮐﻨﻨﺪ . ﺷﺎﻳﺪ هﺮﮔﺰ ﺗﺼﻮر‬ ‫ﻥﻤﯽ ﮐﺮدﻳﺪ ﮐﻪ ﺑﺮﻥﺎﻣﻪ ای را ﮐﻪ ﺑﺎ ﻳﮏ ‪ PC‬اﻳﻨﺘﻞ ﻥﻮﺷﺘﻪ اﻳﺪ روی ﻳﮏ ﻣﺎﺷﻴﻦ ﻣﮑﻴﻨﺘﺎش‬ ‫ﻳﺎ ﻳﻮﻥﻴﮑﺲ اﺟﺮا ﺷﻮد وﻟﯽ اﮐﻨﻮن ﺑﻪ ﻟﻄﻒ ﺟﺎوا اﻳﻦ دﻳﮕﺮ ﺁرزوﻳﯽ دﺱﺖ ﻥﻴﺎﻓﺘﻨﯽ ﻥﻴﺴﺖ .‬ ‫ﺷﯽء ﮔﺮاﻳﯽ در ﺟﺎوا ﺑﻪ ﻏﺎﻳﺖ ﺧﻮد رﺱﻴﺪﻩ اﺱﺖ . ﺟﺎوا در اﺱﺘﻔﺎدﻩ از اﺷﻴﺎء ﺑﺴﻴﺎر ﻣﻔﻴﺪ‬ ‫و ﺱﺨﺖ ﮔﻴﺮ اﺱﺖ و ﺗﺨﻄﯽ از اﺹﻮل را ﻥﻤﯽ ﭘﺬﻳﺮد . در ++‪ C‬ﺷﻤﺎ ﻣﯽ ﺗﻮاﻥﻴﺪ از اﺷﻴﺎء‬ ‫ﺑﻪ ﻣﻮازات ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺑﻪ ﺱﺒﮏ ﻗﺪﻳﻢ اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ و اﮐﺜﺮا در ﭘﺎﻳﺎن ﮐﺎر چﻨﺎن ﻣﻠﻐﻤﻪ‬ ‫ً‬ ‫ای ﺑﻮﺟﻮد ﻣﯽ ﺁﻳﺪ ﮐﻪ ﻣﺪﻳﺮﻳﺖ ﺁن ﺑﺎ روش هﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا اﻣﮑﺎن دارد ﻥﻪ‬ ‫ﺑﺎ روش هﺎی ﻗﺪﻳﻤﯽ . ﺟﺎوا دﻳﮕﺮ ﺑﻪ ﺷﻤﺎ اﺟﺎزﻩ ﻥﻤﯽ دهﺪ ﺗﺎ ﺧﻮد را در چﻨﻴﻦ ﻣﺨﻤﺼﻪ‬ ‫ای ﮔﺮﻓﺘﺎر ﮐﻨﻴﺪ !‬ ‫ﺷﺮوع ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺑﺎ ﺟﺎوا :‬ ‫اوﻟﻴﻦ ﺑﺮﻥﺎﻣﻪ ای ﮐﻪ ﻣﯽ ﻥﻮﻳﺴﻴﻢ ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻣﺘﮑﯽ ﺑﻪ ﺧﻮد اﺱﺖ ﺑﻨﺎم ‪. Hello World‬‬ ‫ﺗﻔﺎوت ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﻣﺘﮑﯽ ﺑﻪ ﺧﻮد و ﻳﮏ اﭘﻠﺖ ﺁن اﺱﺖ ﮐﻪ در ﺑﺮﻥﺎﻣﻪ ﻣﺘﮑﯽ ﺑﻪ ﺧﻮد ) ﮐﻪ‬ ‫از اﻳﻦ ﺑﻪ ﺑﻌﺪ ﺑﻪ ﺁن ﻓﻘﻂ ﺑﺮﻥﺎﻣﻪ ﺧﻮاهﻴﻢ ﮔﻔﺖ ( از ﻣﺘﺪی ﺑﻨﺎم ) (‪ main‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﺷﻮد‬ ‫در ﺣﺎﻟﻴﮑﻪ اﭘﻠﺖ چﻨﻴﻦ ﻣﺘﺪی ﻥﺪارد .‬ ‫ﺑﺮﻥﺎﻣﻪ ‪ Hello World‬ﺑﺴﻴﺎر ﺱﺎدﻩ اﺱﺖ و ﻓﻘﻂ ﺟﻤﻠﻪ ”‪ “Hello World‬را ﻥﻤﺎﻳﺶ ﻣﯽ‬ ‫دهﺪ ﺑﺎ اﻳﻦ ﺣﺎل ﻣﯽ ﺗﻮان از ﺁن ﺑﻪ ﻋﻨﻮان ﺱﻨﮓ ﺑﻨﺎی ﺑﺮﻥﺎﻣﻪ هﺎی ﭘﻴﺸﺮﻓﺘﻪ ﺗﺮ اﺱﺘﻔﺎدﻩ‬ ‫ﮐﺮد چﻮن ﺗﻤﺎم ﺑﺮﻥﺎﻣﻪ هﺎی ﺟﺎوا ﺱﺎﺧﺘﺎر ﮐﻠﯽ ﻣﺸﺎﺑﻬﯽ دارﻥﺪ . ﺑﻄﻮر ﻣﺜﺎل ﺑﻪ ﻟﻴﺴﺖ زﻳﺮ‬ ‫ﻥﮕﺎﻩ ﮐﻨﻴﺪ :‬ ‫{ ‪1: class Hello World‬‬ ‫{)][ ‪2: Public static void main (string args‬‬ ‫,)”‪3: system. Out. Println (“Hello World‬‬ ‫}: 4‬ ‫}: 5‬ ‫اﻳﻦ ﺑﺮﻥﺎﻣﻪ ﭘﻨﺞ ﺧﻄﯽ دارای ﺗﻤﺎم وﻳﮋﮔﻴﻬﺎی ﻳﮏ ﺑﺮﻥﺎﻣﻪ ﮐﺎﻣﻞ و ﻣﻔﺼﻞ ﺷﯽ ء ﮔﺮاﺱﺖ‬ ‫در ﺽﻤﻦ اﻋﺪاد اﺑﺘﺪای هﺮ ﺧﻂ را ﻥﺒﺎﻳﺪ وارد ﮐﺮد چﻮن ﺟﺰﺉﯽ از ﺑﺮﻥﺎﻣﻪ ﻥﻴﺴﺘﻨﺪ اﻳﻨﻬﺎ‬ ‫ﻓﻘﻂ ﺑﺮای ارﺟﺎع ﺑﻪ ﺑﺮﻥﺎﻣﻪ هﻨﮕﺎم ﺗﺸﺮﻳﺢ ﺁن اﺱﺖ . ﺑﺮﻥﺎﻣﻪ را ﺑﺎ ﻥﺎم .‪HelloWorld‬‬ ‫‪ java‬ذﺧﻴﺮﻩ ﮐﻨﻴﺪ . ﻥﺎم ﺑﺮﻥﺎﻣﻪ ﺑﺎﻳﺪ هﻤﺎن ﻥﺎم ﮐﻼس ﺑﺮﻥﺎﻣﻪ ﺑﺎﺷﺪ .‬ ‫81‬
  • 19. ‫ﺗﺤﻠﻴﻞ ﺑﺮﻥﺎﻣﻪ : اﻳﻦ ﺑﺮﻥﺎﻣﻪ دو ﻗﺴﻤﺖ ﻣﻬﻢ دارد .‬ ‫١- ﺗﻤﺎم ﺑﺮﻥﺎﻣﻪ در واﻗﻊ ﻳﮏ ﺗﻌﺮﻳﻒ ﮐﻼس اﺱﺖ .‬ ‫٢- ﮐﻞ ﺑﺮﻥﺎﻣﻪ در ﻣﺘﺪ ) (‪ Main‬ﻗﺮار دارد .‬ ‫ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن ﺑﺮﻥﺎﻣﻪ ﺑﺎﻳﺪ از ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا )‪ (javac‬اﺱﺘﻔﺎدﻩ ﮐﺮد روش ﮐﺎر‬ ‫چﻨﻴﻦ اﺱﺖ :‬ ‫‪Java HelloWorld. java‬‬ ‫ﮐﺎﻣﭙﺎﻳﻠﺮ ﺑﻌﺪ از ﭘﺎﻳﺎن ﮐﺎر ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﺑﻨﺎم ‪ HelloWorld. Class‬ﺗﻮﻟﻴﺪ ﺧﻮاهﺪ‬ ‫ﮐﺮد . اﺹﻮﻻ ﮐﺎﻣﭙﺎﻳﻠﺮ ﺑﺮای هﺮ ﮐﻼس ﺑﺮﻥﺎﻣﻪ ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﺟﺪاﮔﺎﻥﻪ ﺗﻮﻟﻴﺪ ﺧﻮاهﺪ‬ ‫ً‬ ‫ﮐﺮد . ﻓﺎﻳﻞ ﺗﻮﻟﻴﺪ ﺷﺪﻩ ﻳﮏ ﻓﺎﻳﻞ اﺟﺮاﻳﯽ ﻣﺴﺘﻘﻞ ﻥﻴﺴﺖ . ﺑﺮای اﺟﺮای اﻳﻦ ﻓﺎﻳﻞ ﺑﺎﻳﺪ از‬ ‫اﻳﻨﺘﺮﭘﺮﺗﺮ ﺟﺎوا اﺱﺘﻔﺎدﻩ ﮐﺮد . اﻳﻨﺘﺮﭘﺮﺗﺮ ﺟﺎوا ، ‪ Java‬ﻥﺎم دارد . ﺑﺮای اﺟﺮای ﻓﺎﻳﻞ‬ ‫ﮐﻼس ﺗﻮﻟﻴﺪ ﺷﺪﻩ چﻨﻴﻦ ﺑﺎﻳﺪ ﮐﺮد :‬ ‫‪Java HelloWorld‬‬ ‫اﮔﺮ هﻤﻪ چﻴﺰ درﺱﺖ ﭘﻴﺶ رﻓﺘﻪ ﺑﺎﺷﺪ ، ﺑﺎﻳﺪ ﺟﻤﻠﻪ ”!‪ “Hello World‬را روی‬ ‫ﺹﻔﺤﻪ ﮐﺎﻣﭙﻴﻮﺗﺮ ﺧﻮد ﻣﺸﺎهﺪﻩ ﮐﻨﻴﺪ .‬ ‫ﻥﮑﺘﻪ : دﻗﺖ ﮐﻨﻴﺪ ﮐﻪ ﮐﺎﻣﭙﺎﻳﻠﺮ ﺟﺎوا و اﻳﻨﺘﺮﭘﺮﺗﺮ ﺟﺎوا دو چﻴﺰ ﻣﺘﻔﺎوﺗﻨﺪ . ﮐﺎﻣﭙﺎﻳﻠﺮ از‬ ‫ﻓﺎﻳﻞ ﻣﺘﻦ ﺑﺮﻥﺎﻣﻪ ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﻣﯽ ﺱﺎزد و اﻳﻨﺘﺮﭘﺮﺗﺮ ﻓﺎﻳﻞ ﮐﻼس را اﺟﺮا ﻣﯽ‬ ‫ﮐﻨﺪ .‬ ‫اﻳﺠﺎد ﻳﮏ اﭘﻠﺖ ﺟﺎوا :‬ ‫اﻳﺠﺎد اﭘﻠﺖ ﺑﺎ اﻳﺠﺎد ﺑﺮﻥﺎﻣﻪ ﻓﺮق دارد و ﻗﻮاﻋﺪ ﻣﺘﻔﺎوﺗﯽ ﺑﺮ ﺁن ﺣﻤﮑﻔﺮﻣﺎﺱﺖ . ﻳﮏ‬ ‫اﭘﻠﺖ ﺑﺮای اﺟﺮا در ﺹﻔﺤﺎت وب ﻥﻮﺷﺘﻪ ﻣﯽ ﺷﻮد ، ﺑﻨﺎﺑﺮاﻳﻦ ﮐﻤﯽ ﭘﻴﭽﻴﺪﻩ ﺗﺮ از ﻳﮏ‬ ‫ﺑﺮﻥﺎﻣﻪ اﺱﺖ . در واﻗﻊ ﻳﮏ اﭘﻠﺖ ﺗﺎ زﻣﺎﻥﯽ ﮐﻪ در ﻳﮏ ﮐﺎوﺷﮕﺮ اﺟﺮا ﻥﺸﻮد ﺧﺮوﺟﯽ‬ ‫ﺧﻮد را ﻥﻤﺎﻳﺶ ﻥﺨﻮاهﺪ داد .‬ ‫ﺑﺎﻳﺪ ﺱﻌﯽ ﺷﻮد ﺑﺮﻥﺎﻣﻪ هﺎ ، اﭘﻠﺖ هﺎ و ﺹﻔﺤﺎت وب را در داﻳﺮﮐﺘﻮرﻳﻬﺎی ﺟﺪاﮔﺎﻥﻪ‬ ‫ذﺧﻴﺮﻩ ﮐﺮد .‬ ‫اﭘﻠﺘﯽ ﮐﻪ در اﻳﻦ ﻗﺴﻤﺖ ﻣﯽ ﻥﻮﻳﺴﻴﻢ ‪ Hello World Applet‬ﻥﺎم دارد . ﺑﻪ ﻟﻴﺴﺖ‬ ‫زﻳﺮ ﻥﮕﺎﻩ ﮐﻨﻴﺪ :‬ ‫;‪1: import java. Awt. Graphics‬‬ ‫:2‬ ‫{ ‪3: public class Hello World Applet Extends java. Applet. Applet‬‬ ‫:4‬ ‫{ )‪5: Public Void Paint (Graphics G‬‬ ‫;) 52 , 5,”!‪6: g. drawstring (“Hello World‬‬ ‫} :7‬ ‫} :8‬ ‫91‬
  • 20. ‫اﭘﻠﺖ را ﺑﺎ ﻥﺎم ‪ HelloWorldApplet. Java‬ذﺧﻴﺮﻩ ﮐﻨﻴﺪ. در ﻣﻮرد ﻳﮏ اﭘﻠﺖ ﺑﺎﻳﺪ‬ ‫ﺑﻪ چﻨﺪ ﻥﮑﺘﻪ ﺗﻮﺟﻪ ﮐﻨﻴﺪ :‬ ‫دﺱﺘﻮر ‪ import‬در ﺧﻂ ١ ﺷﺒﻴﻪ دﺱﺘﻮر ‪ #include‬در زﺑﺎن ‪ C‬اﺱﺖ ﺑﺎ اﻳﻦ دﺱﺘﻮر‬ ‫اﭘﻠﺖ ﻣﯽ ﺗﻮاﻥﺪ از ﮐﻼﺱﻬﺎی ‪ JDK‬ﺑﺮای ﮐﺎرهﺎی ﮔﺮاﻓﻴﮑﯽ اﺱﺘﻔﺎدﻩ ﮐﻨﺪ .‬ ‫ﻣﺘﺪ ) ( ‪ Paint‬ﺑﺮای ﻥﻤﺎﻳﺶ ﻣﺤﺘﻮﻳﺎت اﭘﻠﺖ اﺱﺖ در اﻳﻦ ﺟﺎ ﻋﺒﺎرت ‪Hello‬‬ ‫! ‪ World‬روی ﺹﻔﺤﻪ ﻥﻤﺎﻳﺶ دادﻩ ﺧﻮاهﺪ ﺷﺪ اﭘﻠﺖ هﺎ ﻣﺘﺪ ) (‪ main‬ﻥﺪارﻥﺪ و ﺑﻪ‬ ‫ﺟﺎی ﺁن از ﻣﺘﺪهﺎی ) (‪ init‬و ) (‪ Start‬ﻳﺎ ) ( ‪ Paint‬اﺱﺘﻔﺎدﻩ ﻣﯽ ﮐﻨﻨﺪ .‬ ‫ﺑﺮای ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدن اﻳﻦ اﭘﻠﺖ چﻨﻴﻦ ﺑﺎﻳﺪ ﮐﺮد ‪java Hello World Applet. java‬‬ ‫در اﻳﻦ ﺣﺎﻟﺖ هﻢ ﮐﺎﻣﭙﺎﻳﻠﺮ ﻳﮏ ﻓﺎﻳﻞ ﮐﻼس ﺑﻪ ﻥﺎم ‪Hello World Applet. Class‬‬ ‫اﻳﺠﺎد ﺧﻮاهﺪ ﮐﺮد اﻣﺎ ﺑﺮای اﺟﺮای ﻳﮏ اﭘﻠﺖ ﻳﮏ ﻗﺪم دﻳﮕﺮ هﻢ ﺑﺎﻳﺪ ﺑﺮداﺷﺖ و ﺁن‬ ‫اﻳﺠﺎد ﻳﮏ ﻓﺎﻳﻞ ‪ HTML‬اﺱﺖ ﮐﻪ اﭘﻠﺖ در ﺁن اﺟﺮا ﺧﻮاهﺪ ﺷﺪ ﻣﯽ ﺗﻮاﻥﻴﺪ ﻳﮏ ﻓﺎﻳﻞ‬ ‫‪ HTML‬را ﺑﺮای اﻳﻦ ﻣﻨﻈﻮر ﻣﺸﺎهﺪﻩ ﮐﻨﻴﺪ .‬ ‫ﻳﮏ ‪ HTML‬ﺑﺮای اﺟﺮای اﭘﻠﺖ ‪: Hello World‬‬ ‫>‪1: <html‬‬ ‫>‪2: <head‬‬ ‫>‪3: <title>Hello to Everyone</title‬‬ ‫>‪4: </head><body‬‬ ‫:‪5: <p> My Java Applet says‬‬ ‫>52=‪6: <applet code=”Hello World Applet. Class” width=150 height‬‬ ‫>‪7: </applet‬‬ ‫>‪8: </body‬‬ ‫>‪9: </html‬‬ ‫ﺗﺤﻠﻴﻞ ﺑﺮﻥﺎﻣﻪ :‬ ‫ﺑﺮای اﺟﺮای ﻳﮏ اﭘﻠﺖ در ﻓﺎﻳﻞ ‪ HTML‬ﺑﺎﻳﺪ از ﺑﺮچﺴﺐ > ‪ < applet‬اﺱﺘﻔﺎدﻩ ﮐﺮد‬ ‫ﺑﺮای ﻣﺸﺨﺺ ﮐﺮدن ﻥﺎم ﮐﻼﺱﯽ ﮐﻪ اﭘﻠﺖ در ﺁن اﺱﺖ از ﺹﻔﺖ ‪ CODE‬اﺱﺘﻔﺎدﻩ‬ ‫ﮐﻨﻴﺪ . ﺑﺮای ﻣﺸﺨﺺ ﮐﺮدن اﺑﻌﺎد ﭘﻨﺠﺮﻩ ای ﮐﻪ اﭘﻠﺖ در ﺁن اﺟﺮا ﺧﻮاهﺪ ﺷﺪ از ﺹﻔﺖ‬ ‫هﺎی ‪ Width‬و ‪ Height‬اﺱﺘﻔﺎدﻩ ﮐﻨﻴﺪ . اﻋﺪاد ﻣﺸﺨﺺ ﺷﺪﻩ ﺑﺮ ﺣﺴﺐ ﭘﻴﮑﺴﻞ هﺴﺘﻨﺪ‬ ‫اﻳﻦ ﻓﺎﻳﻞ را ﺑﺎ ﻥﺎم ‪ HelloWorldApplet.html‬ذﺧﻴﺮﻩ ﮐﻨﻴﺪ ﺣﺎﻻ ﺁﻣﺎدﻩ اﻳﺪ ﺗﺎ اﭘﻠﺖ‬ ‫را اﺟﺮا ﮐﻨﻴﺪ اﻳﻦ ﮐﺎر ﺑﻪ دو روش اﻣﮑﺎﻥﭙﺬﻳﺮ اﺱﺖ :‬ ‫١- اﺱﺘﻔﺎدﻩ از ﮐﺎوﺷﮕﺮهﺎی ﻣﺠﻬﺰ ﺑﻪ ﺟﺎوا ﻣﺎﻥﻨﺪ ‪Net Scape‬‬ ‫٢- اﺱﺘﻔﺎدﻩ از ﺑﺮﻥﺎﻣﻪ ‪ Applet Viewer‬ﮐﻪ ﺑﺎ ‪ JDK‬ﻣﯽ ﺁﻳﺪ . اﻳﻦ ﺑﺮﻥﺎﻣﻪ ﮐﻞ‬ ‫ﺹﻔﺤﻪ وب را ﻥﻤﯽ ﺗﻮاﻥﺪ ﻥﻤﺎﻳﺶ دهﺪ و ﻓﻘﻂ اﭘﻠﺖ را ﻥﻤﺎﻳﺶ ﺧﻮاهﺪ داد .‬ ‫02‬
  • 21. ‫ﺑﺮای دﻳﺪن اﭘﻠﺖ در ﻳﮏ ﮐﺎوﺷﮕﺮ ، ﻓﺎﻳﻞ ‪ html‬ﻓﻮق را ﺑﺎز ﮐﻨﻴﺪ ، ﺑﺎ اﻳﻦ ﮐﺎر ﺹﻔﺤﻪ‬ ‫وب و اﭘﻠﺖ درون ﺁن ﺑﻪ ﻥﻤﺎﻳﺶ در ﺧﻮاهﺪ ﺁﻣﺪ . روش اﺱﺘﻔﺎدﻩ از ‪applet viewer‬‬ ‫چﻨﻴﻦ اﺱﺖ .‬ ‫ﻥﮑﺘﻪ : ﺑﺎ وﺟﻮد اﻳﻨﮑﻪ ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ ‪ applet viewer‬را از ﻣﺤﻞ ﻓﺎﻳﻞ ‪ html‬اﺟﺮا‬ ‫ﮐﺮد وﻟﯽ در اﻳﻦ ﺣﺎﻟﺖ ﺑﺪون ﺑﺴﺘﻦ ﺁن ﻥﻤﯽ ﺗﻮان اﭘﻠﺖ را ﻣﺠﺪدا ﺑﺎر ﮐﺮد . در ﺣﺎﻟﻴﮑﻪ‬ ‫ً‬ ‫اﮔﺮ ﻣﺸﺎهﺪﻩ ﮔﺮ اﭘﻠﺖ از ﻣﺤﻞ دﻳﮕﺮی اﺟﺮا ﺷﻮد ) ﻣﺎﻥﻨﺪ دﺱﺘﻮر ﻓﻮق( ﻣﯽ ﺗﻮان ﻳﮏ‬ ‫اﭘﻠﺖ را ﺗﻐﻴﻴﺮ دادﻩ ، ﻣﺠﺪدا ﮐﺎﻣﭙﺎﻳﻞ ﮐﺮدﻩ و ﺱﭙﺲ دوﺑﺎرﻩ در ﻣﺸﺎهﺪﻩ ﮔﺮ ﺑﺎر ﮐﺮد .‬ ‫ً‬ ‫ﺑﻄﻮر ﮐﻠﯽ ﺟﺎوا ﻳﮏ زﺑﺎن ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ اﺱﺖ ﮐﻪ ﺑﺎ ﺁن ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ هﺎی ﻣﺘﻨﻮﻋﯽ‬ ‫ﻥﻮﺷﺖ ﺑﻴﺸﺘﺮﻳﻦ ﮐﺎرﺑﺮد ﺟﺎوا در اﻳﻨﺠﺎ اﭘﻠﺘﻬﺎﻳﯽ اﺱﺖ ﮐﻪ در ﮐﺎوﺷﮕﺮهﺎی وب ﻗﺎﺑﻞ‬ ‫ﻣﺸﺎهﺪﻩ هﺴﺘﻨﺪ .‬ ‫اﭘﻠﺘﻬﺎ ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ هﺴﺘﻨﺪ ﮐﻪ ﺟﺰﻳﯽ از ﺹﻔﺤﺎت وب ﻣﺤﺴﻮب ﻣﯽ ﺷﻮﻥﺪ . ﺗﻘﺮﻳﺒﺎ هﺮ‬ ‫ً‬ ‫ﮐﺎری ﺑﺎ اﭘﻠﺖ هﺎ اﻣﮑﺎﻥﭙﺬﻳﺮ اﺱﺖ .‬ ‫ﻗﺪرت ﺟﺎوا در ﺱﺎدﮔﯽ و اﺱﺘﻘﻼل از ﺁن ﺑﺴﺘﺮ ﺱﺨﺖ اﻓﺰاری ) چﻪ در ﻓﺎﻳﻞ ﻣﻨﺒﻊ ﺑﺮﻥﺎﻣﻪ‬ ‫و چﻪ در ﮐﺪ ﺑﺎﻳﻨﺮی ﺁن ( اﺱﺖ . ﺑﺎ ﺟﺎوا ﻣﯽ ﺗﻮان ﺑﺮﻥﺎﻣﻪ هﺎﻳﯽ هﻢ ﻥﻮﺷﺖ ﮐﻪ ﺑﺪون‬ ‫ﮐﺎوﺷﮕﺮهﺎی وب ﻗﺎﺑﻞ اﺟﺮا ﺑﺎﺷﻨﺪ . اﭘﻠﺖ هﺎی ﺟﺎوا را ﻓﻘﻂ در ﻓﺎﻳﻠﻬﺎی ‪ HTML‬ﻣﯽ‬ ‫ﺗﻮان ﻣﻮرد اﺱﺘﻔﺎدﻩ ﻗﺮار داد .‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا و ﺟﺎوا )‪: (Object Oriented Programming – OOP‬‬ ‫ﻳﮑﯽ از ﺑﺰرﮔﺘﺮﻳﻦ اﻳﺪﻩ هﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ در دو دهﻪ اﺧﻴﺮ اﺱﺖ ﮐﻪ ﻥﻴﺎز ﺑﻪ ﺗﺴﻠﻂ ﮐﺎﻣﻞ‬ ‫دارد .‬ ‫ﻣﻔﺎهﻴﻢ ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا :‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ء ﮔﺮا ﻗﺼﺪ دارد ﻣﺪﻟﯽ از دﻥﻴﺎی واﻗﻌﯽ را وارد ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ‬ ‫ﮐﺎﻣﭙﻴﻮﺗﺮ ﮐﻨﺪ دﻥﻴﺎی اﻃﺮاف ﻣﺎ از اﺷﻴﺎء ﺱﺎﺧﺘﻪ ﺷﺪﻩ اﺱﺖ .‬ ‫اﺷﻴﺎء )‪ (Objects‬و ﮐﻼﺱﻬﺎ )‪: (Classes‬‬ ‫ﺷﻴﯽ ء ﮐﻠﻴﺪی ﺗﺮﻳﻦ ﻣﻔﻬﻮم ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽ ﮔﺮا اﺱﺖ هﺮ ﺷﯽ ء ﻳﮏ ﺣﺎﻟﺖ و رﻓﺘﺎر‬ ‫دارد و ﺑﺮﻥﺎﻣﻪ ﻋﺒﺎرت اﺱﺖ از ﺑﺮ هﻢ ﮐﻨﺶ ﺑﻴﻦ اﺷﻴﺎء . ﺣﺎﻟﺖ ﻳﮏ ﺷﯽ ء ﻋﺒﺎرت اﺱﺖ‬ ‫از ﻣﺘﻐﻴﻴﺮهﺎی ﻋﻨﺎﺹﺮ دادﻩ ای ﺷﻴﯽء و ﻣﻘﺪار ﺁﻥﻬﺎ . رﻓﺘﺎر ﻳﮏ ﺷﯽ ء را ﻣﺘﺪهﺎی ﺁن‬ ‫ﺗﻌﻴﻴﻦ ﻣﯽ ﮐﻨﺪ .‬ ‫ﺷﯽء در واﻗﻊ ﻣﻘﺪاری ﮐﺪ اﺱﺖ ﮐﻪ ﮐﺎر ﺧﺎﺹﻴﺘﯽ اﻥﺠﺎم ﻣﯽ دهﺪ .‬ ‫هﺮ ﺷﯽء ﮐﭙﺴﻮﻟﯽ اﺱﺖ از ﻣﻘﺪاری ﻣﺘﻐﻴﻴﺮ و ﮐﺪ ﮐﻪ ﮐﺎر ﻥﮕﻬﺪاری و ﺑﻪ روز در ﺁوردن‬ ‫ﺁﻥﻬﺎ را ﺱﺎدﻩ ﻣﯽ ﮐﻨﺪ . ﻣﻌﻤﻮﻻ درون ﻳﮏ ﺷﯽء از دﺱﺘﺮس دﻥﻴﺎی ﺧﺎرج ﺑﻪ دور اﺱﺖ و‬ ‫ً‬ ‫ﺑﺮای ﮐﺎر ﺑﺎ ﺁن ﺑﺎﻳﺪ از ارﺱﺎل ﭘﻴﺎم اﺱﺘﻔﺎدﻩ ﮐﺮد . ﻣﺰﻳﺘﺶ ﺁن اﺱﺖ ﮐﻪ ﮐﺎرﺑﺮ ﺑﺮای ﮐﺎر ﺑﺎ‬ ‫ﺁن هﻴﭻ ﻥﻴﺎزی ﺑﻪ داﻥﺴﺘﻦ ﻣﮑﺎﻥﻴﺰم هﺎی دروﻥﯽ ﺁن ﻥﺪارد و ﻓﻘﻂ ﺑﺎﻳﺪ ﺱﺎﺧﺘﺎر ﭘﻴﺎم هﺎ را‬ ‫ﺑﺪاﻥﺪ . ﻣﻌﻤﻮﻻ ﺱﺎﺧﺘﺎر ﭘﻴﺎم هﺎ در اﺷﻴﺎء ﻣﺨﺘﻠﻒ ﻳﮑﺴﺎن اﺱﺖ . در دﻥﻴﺎی واﻗﻌﯽ هﻢ‬ ‫ً‬ ‫وﺽﻊ ﺑﻪ هﻤﻴﻦ ﻣﻨﻮال اﺱﺖ ﻣﺜﻼ ﺑﺮای اﺱﺘﻔﺎدﻩ از ﻳﮏ ﺗﻠﻮﻳﺰﻳﻮن ﺷﻤﺎ هﻴﭻ ﻥﻴﺎزی ﺑﻪ‬ ‫ً‬ ‫12‬
  • 22. ‫ﺁﺷﻨﺎﻳﯽ ﺑﺎ ﭘﻴﭽﻴﺪﮔﻴﻬﺎی درون ﺁن ﻥﺪارﻳﺪ ﻓﻘﻂ ﮐﺎﻓﯽ اﺱﺖ ﺑﺪاﻥﻴﺪ ﮐﻪ ﺑﺎﻳﺪ ﺁن را ﺑﻪ ﺑﺮق زدﻩ‬ ‫و روﺷﻦ ﮐﻨﻴﺪ و ﻳﮏ ﮐﺎﻥﺎل را اﻥﺘﺨﺎب ﮐﻨﻴﺪ . ﮐﻼس در واﻗﻊ اﻟﮕﻮﻳﯽ اﺱﺖ ﺑﺮای اﻳﺠﺎد‬ ‫ﺷﯽء . در واﺱﻂ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺟﺎوا )‪ (java API‬چﻨﺪﻳﻦ ﮐﻼس ﻣﺨﺘﻠﻒ وﺟﻮد دارد .‬ ‫چﻨﺪﻳﻦ ﮐﻼس ﺑﺎ هﻢ ﻳﮏ ﮐﺘﺎﺑﺨﺎﻥﻪ ﮐﻼس ‪ Class Library‬ﻣﯽ ﺱﺎزﻥﺪ .‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺟﺎوا اﺹﻮﻻ چﻴﺰی ﻥﻴﺴﺖ ﺟﺰ ﻃﺮاﺣﯽ و ﭘﻴﺎدﻩ ﺱﺎزی ﮐﻼس هﺎ .‬ ‫ً‬ ‫ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﯽ ﺷﯽء ﮔﺮا در ﺟﺎوا :‬ ‫ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽء )‪ (OOP‬ﻳﮑﯽ از ﺑﺰرﮔﺘﺮﻳﻦ اﻳﺪﻩ هﺎی ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ در دو دهﻪ‬ ‫اﺧﻴﺮ اﺱﺖ ، اﻣﺎ ﺗﺴﻠﻂ ﮐﺎﻣﻞ ﺑﺮ اﻳﻦ اﻳﺪﻩ ﺑﻪ ﺱﺎﻟﻬﺎ زﻣﺎن و ﻣﻤﺎرﺱﺖ ﻥﻴﺎز دارد . ﺑﺮﻥﺎﻣﻪ‬ ‫ﻥﻮﻳﺴﯽ ﺷﯽء در واﻗﻊ ﭘﻴﻮﻥﺪ دﻥﻴﺎی واﻗﻌﯽ ﺑﺎ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﮐﺎﻣﭙﻴﻮﺗﺮ اﺱﺖ . در اﻳﻨﺠﺎ ﺑﺎ‬ ‫ﻣﻔﺎهﻴﻢ ﺑﺮﻥﺎﻣﻪ ﻥﻮﻳﺴﯽ ﺷﯽء ﮔﺮا در ﺟﺎوا ، و ارﺗﺒﺎط اﻳﻦ ﻣﻔﺎهﻴﻢ ﺑﺎ ﺱﺎﺧﺘﺎر ﺑﺮﻥﺎﻣﻪ هﺎ‬ ‫ﺁﺷﻨﺎ ﻣﯽ ﺷﻮﻳﻢ :‬ ‫• ﺷﯽء و ﮐﻼس چﻴﺴﺖ و راﺑﻄﻪ ﺁﻥﻬﺎ چﮕﻮﻥﻪ اﺱﺖ .‬ ‫• ﻳﮏ ﺷﯽء ﻳﺎ ﮐﻼس دو ﺟﺰء ﻣﻬﻢ دارد : رﻓﺘﺎر و ﺣﺎﻟﺖ .‬ ‫• وراﺛﺖ و ﻥﻘﺶ ﺁن در ﻃﺮاﺣﯽ ﺑﺮﻥﺎﻣﻪ هﺎ .‬ ‫• ﺑﺴﺘﻪ هﺎ و واﺱﻂ هﺎ در ﺟﺎوا .‬ ‫اﻳﺠﺎد ﻳﮏ ﮐﻼس :‬ ‫در اﻳﻦ ﻗﺴﻤﺖ ﻳﮏ ﻣﺜﺎل ﻋﻤﻠﯽ ﺧﻮاهﻴﻢ ﺁورد . در اﻳﻦ ﻣﺜﺎل ﻳﮏ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ را ﺷﺒﻴﻪ‬ ‫ﺱﺎزی ﻣﯽ ﮐﻨﻴﻢ . ﻳﮏ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ واﻗﻌﯽ دارای ﺣﺎﻟﺖ و رﻓﺘﺎر ﺧﺎص ﺧﻮد اﺱﺖ .‬ ‫ﺣﺎﻟﺖ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ در واﻗﻊ هﻤﺎن ﺧﻮاص ﺁن ) ﻣﺎﻥﻨﺪ رﻥﮓ ، ﻣﺪل ، ﻥﻮع و ... (‬ ‫اﺱﺖ . ﻣﺠﻤﻮع اﻳﻦ ﺧﻮاص ﻳﮏ ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ ﺧﺎص را ﻣﺸﺨﺺ ﺧﻮاهﻨﺪ ﮐﺮد ﮐﻪ از‬ ‫ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ هﺎی دﻳﮕﺮ ﻗﺎﺑﻞ ﺗﻤﻴﺰ اﺱﺖ . هﺮ ﺷﯽء وهﻠﻪ اﻳﺴﺖ از ﻳﮏ ﮐﻼس . ﮐﻼس‬ ‫ﻣﻮﺟﻮدی ﻗﺎﺑﻞ ﻟﻤﺲ ﻥﻴﺴﺖ ، در ﺣﺎﻟﻴﮑﻪ ﺷﯽء ﻣﻮﺟﻮدی اﺱﺖ ﻗﺎﺑﻞ ﻟﻤﺲ ﮐﻪ ﺑﻪ ﮐﻼس‬ ‫ﺧﻮد ﻣﻮﺟﻮدﻳﺖ دادﻩ اﺱﺖ . ﻣﺜﻼ ، اﻥﺴﺎن ﻳﮏ ﮐﻼس اﺱﺖ در ﺣﺎﻟﻴﮑﻪ ﺷﻤﺎ ﻥﻤﻮﻥﻪ ای‬ ‫ً‬ ‫هﺴﺘﻴﺪ از ﮐﻼس اﻥﺴﺎن ، ﺷﻤﺎ ﻣﻮﺟﻮدﻳﺖ دارﻳﺪ در ﺣﺎﻟﻴﮑﻪ چﻴﺰی ﺑﻨﺎم اﻥﺴﺎن وﺟﻮد‬ ‫ﺧﺎرﺟﯽ ﻥﺪارد، ﺑﻠﮑﻪ در اﺷﻴﺎء ﺧﺎص ) ﻣﻦ ، ﺷﻤﺎ ، دﻳﮕﺮان ( ﻣﻮﺟﻮدﻳﺖ ﻣﯽ ﻳﺎﺑﺪ .‬ ‫ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ ﻣﺎ دارای رﻓﺘﺎرهﺎﻳﯽ هﻢ هﺴﺖ ، رﻓﺘﺎرهﺎﻳﯽ ﻣﺎﻥﻨﺪ روﺷﻦ ﺷﺪن ، ﺧﺎﻣﻮش‬ ‫ﺷﺪن ، ﺗﻌﻮﻳﺾ دﻥﺪﻩ ، ﺱﺮﻋﺖ ﮔﺮﻓﺘﻦ ، ﺗﺮﻣﺰ ﮐﺮدن و ﻏﻴﺮﻩ .‬ ‫ادﻳﺘﻮر ﺧﻮد را اﺟﺮا ﮐﻨﻴﺪ و ﮐﻼس ﻣﻮﺗﻮر ﺱﻴﮑﻠﺖ را ﻣﺎﻥﻨﺪ ذﻳﻞ ﺗﻌﺮﻳﻒ ﮐﻨﻴﺪ :‬ ‫{ ‪Class Motorcycle‬‬ ‫}‬ ‫22‬