forum.ge
reklama
FORUM.GE წესები  · დახმარება  · ძებნა  · წევრები  · კალენდარი  · ჩატი
Pages: (9) [1] 2 3 ... ბოლო »  ( გადავიდეთ პირველ წაუკითხავ წერილზე ) გამოხმაურება · ახალი თემა · ახალი გამოკითხვა

> PHP & Ajax, შტრიხები პროტრეტისათვის...
Gode
ასტეროიდი ბ612


******
ჯგუფი: Members
წერილები: 8313
წევრი No.: 1340
რეგისტრ.: 19-October 02

გამოგზავნილია: 22 Jun 2007, 00:46  #5938786      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი
მოგესალმებით პატივცემულო კოლეგებო! yes.gif

სათაურიდან იმდენად კარგად ჩანს ყველაფერი, რომ აღარ ღირს ალბათ დეტალებში ჩაძიება. რომ არ მოგატყუოთ წმინდა ajax-თან php-ს გამოყენებით არ მქონია შეხება, მხოლოდ რაღაც ფსევდო "ajax"-ი მაქვს ნაჩალიჩარი, მაგრამ ის ჯავასკრიპტი და DHTML-ია და არანაირი XML-იზაცია იქ არ ხდება.

მოვიდა დრო როცა ეს ამბავი ერთხელ და სამუდამოდ უნდა გაირკვეს! vik.gif

რა მინდა ეხლა და რას გერჩით:

1. ვის რა გამოცდილება გაქვთ ამ სფეროში.
2. ვინ რა კლასებს იყენებთ
3. ვინ რა საკუთარი კლასები დაწერა იმიტომ რომ არ მოეწონა ათასი ჯურის third-party კლასები.
4. რა წყალქვეშა ქვები და სირთულეებია მოსალოდნელი.

მოკლედ All About Ajax & PHP მიიღება ამ თემაში. ჰა ბურთი და ჰა მოედანი. fig.gif


--------------------
http://www.gode.ge შინაარსიანი ბლოგი
იოსები
სუპერ მემბერი :P


*****
ჯგუფი: Registered
წერილები: 1504
წევრი No.: 2694
რეგისტრ.: 14-September 03

გამოგზავნილია: 22 Jun 2007, 01:00  #5938941      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი · icq
Gode

შენიშვნა DHTML - ს ექპოქა მზე და ასე შემდეგ ჩაესვენა... მართებულია DOM ან DOM Scripting - ის გამოყენება შესაბამის ტერმინად.

QUOTE
1. ვის რა გამოცდილება გაქვთ ამ სფეროში.

ძალიან საფუძვლიანი გამოცდილება მაქვს ამ სფეროში.

QUOTE
2. ვინ რა კლასებს იყენებთ

მხოლოდ საკუთარს და არავითარ ე.წ. third party - ს, არა იმიტომ რომ ცუდია უბრალოდ საკუთარის წერა მირჩევნია...

QUOTE
3. ვინ რა საკუთარი კლასები დაწერა იმიტომ რომ არ მოეწონა ათასი ჯურის third-party კლასები.

დაწერილი მაქვს ყველა აუცილებელი კლასი რაც საჭიროა RIA - სთვის

კოლეგებო ნუ მიწყენთ ასეთ არათავმდაბლობას...

QUOTE
4. რა წყალქვეშა ქვები და სირთულეებია მოსალოდნელი.


წყალქვეშა ქვებს რაც შეეხება:

1) ბრაუზერებს შორის თავსებადობა, 99% შემთხვევაში კოდი თავსებადია ყველა არსებული ბრაუზერისთვის გარდა IE - სი, ეს ეხება როგორც IE6 - ს ასევე ახალ IE7 - ს დანარჩენი ყველა ბრაუზერისთვის უმეტეს შემთხვევაში უპრობლემოდ ხდება ყველაფერი.

2) მემორი მენეჯმენტი აქაც IE ჟონავს, ანუ java_script - ისა და DOM - ის მემორი და გარბიჯ კოლექტორები ცალკე აქვს აქვს, და თუ დავუშვათ ჩვეულებრივი JS ობიექტს აქვს მითითება DOM ობიექტზე ხოლო შემდეგ ხდება ამ ჩვეულებრივი ჯავასკრიპტის ობიექტის განადგურება მეხსიერებაში რჩება DOM - ის ობიექტი, რამაც შეიძლება მეხსიერების გადავსება და არა მარტო ბრაუზერის არამედ მთლიანი სისტემის დაკიდება გამოიწვიოს.

3) თვითონ Ajax - თან არანაირი პრობლემა არ არის არსად ერთადერი უცნაურობა რაც IE - ს ახასიათებს არის XHR ობიექტის ინიციალიზაციის და მისი მეთოდების გამოძახების მიმდევრობაში სხვაობა... რაც იწვევს იმას რომ ე.წ. multiple instance - ბის გამოყენება ხდება შეუძლებელი... გვერდის ავლა ადვილია...

4) კოდირებებთან პრობლემები არ არსებობს გარდა იმისა რომ თუ ვიყენებ განსხვავებულ კოდირებას (არა UTF-8, XHR ყველაფერს UTF-8 კოდირებით გზავნის სერვერზე) მაშინ სერვერის მხარეს რიქვესტის პარამეტრების მნიშვნელობების შესაბამის ენკოდინგში გადაყვანაა საჭირო რაც მიიღწევა mb_string - ით ან iconv - თი. თუმცა ისევ IE6 - ში რომელიღაც კოდირებაში გარღვევაა...

5) პრობლემები რესპონსთან გხვდება IE - ში ანუ innerHTML - ს გამოყენება გარკვეულ მომენტებში სახიფათოა მითუმეტეს თუ tabale ან form ელემენტებთან ვმუშაობთ... თუმცა გამოსავალი არსებობს...

6) DOM თითქმის ყველგან ერთნაირია და განსხვავებების მართვა ადვილია... (თუმცა IE და ზოგ შემთხვევაში Opera უბრავენ)

7) დეველოპმენტისთვის FireFox და FireBug არის must!!!

8) ზოგადად Ajax არ არის მარტო XHR და ძალიან მაღალ კვალიფიკაციას მოითხოვს და საკმაოდ საფუძვლიან ცოდნას Ajax აპლიკაციების წერა

9) გარდა XHR - ისა პრობლემები გვხვდება CSS - თან რა თქმა უნდა IE - ში, სხვაგან ყველგან მეტნაკლები სიზუსტეა (Opera შედარებით პრობლემატურია)

10) დინამიურ stylesheet - ებთან მუშაობისას განსხვავებები მარტო IE - ში გვხვდება, Safari - ში readonly იყო და ბოლო ვერსიაში დაფიქსეს...

11) პრობლემებია XML რესპონსთან ოღონდ ძალიან მცირე

* * *
ბიბლიოთეკების ოვერვიუ

1) prototype და scriptaculo (ეს განვითარებაა prototype - სი) პიონერები და ერთერთი წვერებიანი ბიბლიოთეკებია კარგი და წარმატებული რამეებია... თუმცა არ მომწონს დიდად...

2) ზემოთნახსენები ბიბლიოთეკების მსგავსია კიდევ mootools ძალიან ძალიან კარგია..

3) YUI ანუ Yahoo User Interface ესეც კარგია თუმცა შედარებით ზონზროხაა...

4) GWT ანუ Google Web Toolkit - ასეთი მძ%&$ი მე ჯერ არ მინახავს სრული პასუხისმგებლობით ვაცხადებ რომ მაგარი ტუტუცობაა...

5) PHP - სთვის არსებოს XAjax შედარებით კარგი და სტაბილური ძრავია და მარტივი რაც მთავარია... იდეოლოგია მე ძალიან მომწონს და ზოგადად მომხრე ვარ მაგ იდეოლოგიის...

დანარჩენ დეტალებს საჭიროების მიხედვით დავწერ wink.gif
* * *
6) jQuery - ესეც შესანიშნავი რამ არის უბრალოდ შედარებით ძალიან ოდნავ ნელია mootools - ზე...

ასევე მოსაზრებები ბიბლიოთეკების გამოყენებასთან დაკავშირებით:

1) აუცილებლად უნდა გამოვიყენოთ თუ თვითონ წერა გვეზარება...

2) აუცილებლად უნდა გამოვიყენოთ იმ შემთხვევაში თუ წერა არ გვეზარება მაგრამ ყველა ბრაზერის განსხვავებების დევნის დრო არ არის...

3) უნდა გამოვიყენოთ თუ საერთოდ არ გვაინტერესებს კლიენტის მხარეს რა ხდება სინამდვილეში და ტყუილად რომ არ ვაბრალოთ წარმოშობილი პრობლემები ბრაუზერების ვენდორებს (ნერვებსაც დავზოგავთ და დროსაც)


* * *
4) უნდა გამოვიყენოთ იმ შემთხვევაშიც თუ ზოგადად framework - ების წერის გამოცდილება არ გვაქვს, აქ ლაპარაკი არ არის ზოგადად java_script - ზე აქ მნიშვნელოვანია როგორც კლიენტის მხარეს ასევე სერვერის მხარეს აპლიკაციების არქიტექტურის აგების და ჩამოყალიბების ცოდნა და გამოცდილება... ისე 100დან 100 შემთხვევაში შედეგი იქნება დიდი თუჯის ქვაბი...

ასევე ერთი რამ არის მხედველობაში მისაღები, ბიბლიოთეკების გამოყენება არ ნიშნავს რომ არ უნდა ვიცოდეთ ან არ უნდა ვისწავლოთ არაფერი... უკიდურეს შემთხვევაში თავად გამოყენებული ბიბლიოთეკის შესწავლა მაინც გვიწევს საფუძვლიანად... წინააღმდეგ შემთხვევაში შედეგია დიდი 0...

კიდევ ერთი, ის რომ Ajax მოიცავს რამდენიმე ტექნოლოგიას ასევე ის მოიცავს დეველოპმენტს სტანდარტების დაცვით (ამ საკითხს არ სჭირდება გაჯაზება, ეს თავისუფლად შესაძლებელია), აქედან დასკვნა არის ის რომ Ajax != XHR, ეს არის კომპლექსური და საკმაოდ ნიუანსური იდეოლოგია...
* * *
ჰო ჰო მოდის აზრები biggrin.gif

ესე იგი Ajax - ის გამოყენება ბრმად არ შეიძლება... Ajax - ის გამოყენებ ფრონტენდზე როდესაც ვლაპარაკობთ რაიმე პაბლიკ რესურსზე უნდა მოხდეს ფრთხილად და ზომიერად... რაც შეეხება კონტროლ პანელების წერას აქ სრული თავისუფლება გვაქვს...

საიტის შემთხვევაში Ajax - ის გამოყენება სასურველია და დასაშვებია მაგალითად რაიმე ფორმის შევსებისა და გაგზავნისათვის... რეიტინგებში/ვოუტინგებში... და ასევე ისეთ შემთხვევებში სადაც კონტენტი არ თამაშობს გადამწვეტ როლს..

არავითარ შემთხვევაში არ უნდა გამოვიყენოთ Ajax საიტის ნავიგაციის მენიუებში! არ უნდა გამოვიყენოთ Ajax მნიშვნელოვანი კონტენტის გამოსატანად...

ასევე საიტზე Ajax - ის გამოყენება ხშირად რატომღაც ლამაზი ეფექტების გამოყენებაში ერევათ... ათასგვარი ლამაზი მენიუები და ეფექტები არ ნიშნავს რომ საიტი არის Ajaxed...

კიდევ ერთი დეტალი უნდა ავირჩიოთ და გამოვიყენოთ ისეთი ბიბლიოთეკა რომელიც იქნება ძალიან მცირე ზომაში, სასურველი იქნება თუ მისი ზომ არ იქნება 50KB - ზე დიდი... ამისათვის არსებობს სპეციალური კომპრესიის საშუალებები...
* * *
Ajax აბრევიატურის ავტორის ესე ამ მიმართულების შესახებ http://www.adaptivepath.com/publications/e...ives/000385.php
* * *
რაც შეეხება სერვერის მხარეს

PHP იქნება ეს თუ სხვა ენა აუცილებელია ორი რამ... უნდა მოხდეს Rrequest - ის და Response - ეს უნიფიცირება... უნდა გვახსოვდეს რომ Ajax - ს გამოვიყენებთ თუ არა Request არის Request და Response არის Response... თუმცა როდესაც ვმუშაობთ XHR - ით საჭიროა ვიცოდეთ რომ სერვერის მხარეს უბრალოდ პასუხის გამზადება და შემდეგ echo - თი გამოფურთხება არ არის საკმარისი...

პასუხი შესაძლოა იყოს სამი ტიპის, ესენია:

1) ჩვეულებრივი ტექსტი
2) JSON
3) XML

არჩევანი უნდა გაკეთდეს JSON - სა და XML - ს შორის, რადგან ორივე გვაძლევს პასუხის სტრუქტურირების საშუალებას... თუმცა მე პირადად XML მირჩევნია... რადგან თუ საჭირო გახდა შესაძლებელია CDATA სექციის გამოყენება ტეგებში და მასში სასურველი ტექსტის ან პირდაპირ JSON - ის ჩადება...

თვითონ პასუხის დამუშავება უნდა იყოს გარკვეულწილად უნივერსალური ანუ უნდა ჩამოვაყალიბოთ response - ს გარკვეული ფორმატი რაც შემდგომ უკვე კლიენტის მხარეს დამუშავდება, თუმცა მისი აწყობა გარკვეული მექანიზმებით უნდა მოხდეს სერვერზე...

ასევე უნდა იყოს იმის საშუალება რომ პასუხში ჩავდოთ ისეთი XML ტეგები რომლებიც არ არის გათვალისწინებული სპეციფიკაციის მიხედვით თუმცა კლიენტის მხარეს უნდა იყოს იმის საშუალება რომ შეგვეძლოს response handler - ების რეგისტრაცია მსგავსი არაგანსაზღვრული ელემენტებისათვის...

სასურველია რომ ნებისმიერი XHR რიქვესტს ღებულობდეს ერთი უნივერსალური კონტროლერით ხოლო შემდგომი განაწილება უკვე იყოს გარკვეულწილად ფრეიმვორკის საქმე...


--------------------
https://github.com/ioseb, http://www.code.ge, RFC6861
------------------------------------------------------
And when I say geeks, I don’t mean ordinary web professionals like you and me. I mean geeks who make the rest of us look like Grandma on the first day She’s Got Mail.™
grdzeli_kaci
Crazy Member


*****
ჯგუფი: Registered
წერილები: 1016
წევრი No.: 5229
რეგისტრ.: 24-May 04

გამოგზავნილია: 22 Jun 2007, 09:38  #5940352      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა
Gode
QUOTE
ჰა ბურთი და ჰა მოედანი



smile.gif

ამ კაცმა არა მგონია ამ საქმეში ვინმეს ბურთი დაუთმოს, მოედანზე მიდი გენც. biggrin.gif


--------------------
გენიალობა სიმარტივეშია
Otory
Insane


*******
ჯგუფი: Members
წერილები: 16589
წევრი No.: 1007
რეგისტრ.: 9-June 02

გამოგზავნილია: 22 Jun 2007, 09:50  #5940404      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი
იმენნა ბებო ვარ smile.gif)))))))
იმის და მიუხედავად რო რაც დაწერა სოსომ ვიცოდი თითქმის ყველაფერი, ისე დაწერა რო ბებო ვარ რა და ეგაა smile.gif)))))))))))

ხოდა....
2 რაღაც tongue.gif

QUOTE
მოკლედ All About Ajax & PHP მიიღება ამ თემაში

შოთ, უკვე დახურე თემა biggrin.gif

იოსები
და დრო არ გაქვს ხო? aba.gif vik.gif


--------------------
Over 9000!
Gode
ასტეროიდი ბ612


******
ჯგუფი: Members
წერილები: 8313
წევრი No.: 1340
რეგისტრ.: 19-October 02

გამოგზავნილია: 22 Jun 2007, 10:46  #5940749      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი
იოსები
უღრმესი მადლობა ასეთი ვრცელი პასუხისათვის smile.gif
ნუ რაც დაწერე კონკრეტულად ajax-ს რაც შეეხება, რექვესთ-რესპონსებს, XML JSON-ებს და ა.შ. ეგ ყველაფერი გასაგებია. მე ამ შემთხვევაში კონკრეტულად php-დან მაინტერესებს იმპლიმენტაციის ნიუანსები და მუშაობის გამოცდილება smile.gif

QUOTE

მემორი მენეჯმენტი აქაც IE ჟონავს, ანუ java_script - ისა და DOM - ის მემორი და გარბიჯ კოლექტორები ცალკე აქვს აქვს, და თუ დავუშვათ ჩვეულებრივი JS ობიექტს აქვს მითითება DOM ობიექტზე ხოლო შემდეგ ხდება ამ ჩვეულებრივი ჯავასკრიპტის ობიექტის განადგურება მეხსიერებაში რჩება DOM - ის ობიექტი, რამაც შეიძლება მეხსიერების გადავსება და არა მარტო ბრაუზერის არამედ მთლიანი სისტემის დაკიდება გამოიწვიოს.

კიდე აი ასეთი სურპრიზები მაინტერესებს smile.gif ანუ ის რაც ვიღაცას გავლილი აქვს ერთხელ და იცის "აქეთ წახვალ მოკვდები, აქეთ წახვალ გადარჩები". smile.gif

საბოლოო მიზანს წარმოადგენს საკუთარი ძრავის აგება ერთხელ და სამუდამოდ smile.gif მისია რთულია, მაგრამ უაღრესად საინტერესო, საჭირო და განხორციელებადი. სურვილი არის, საშუალება არის, თითები დაგრეხილია, მაგრამ გავასწორებთ smile.gif

მჭირდება შესაბამისი ლიტერატურა და ინფორმაცია ხოდა იმდენი წერე შენ რომ სადღაც გექნება ერთი ორი საინტერესო PDF-ი და ნუ დაიზარებ მოძებნას smile.gif

grdzeli_kaci
საქართველოს საფეხბურთო ნაკრები კი არ ვარ ეგრევე მოედანზე შევვარდე, ჯერ ვარჯიში, ფიზ.მომზადება, ტაქტიკური მომზადება, ტექნიკური მომზადება, სათამაშო გამოცდილება და მერე მოედანზეც შევალ, დავმარცხდები, მაგრამ თავაწეული გამოვალ gigi.gif

Otory
არაფერს არ დავხურავ, საკმაოდ საინტერესოდ ვაპირებ ამ თემის განვითარებას, ეჭვი მეპარება მარტო მე მაინტერესებდეს ეს საკითხი, ხოდა შევაგროვოთ აქ ინფორმაცია. tongue.gif

ისე PDF-ების ამბავი შენც გეხება wink.gif
Pixel_misha
Crazy Member


*****
ჯგუფი: Registered
წერილები: 1920
წევრი No.: 30389
რეგისტრ.: 23-February 07

გამოგზავნილია: 22 Jun 2007, 12:25  #5941637      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · yim
Gode
იოსებმა კარგი ოვერვიუ გააკეთა, ზოგ რამეზე გავამახვილებ ყურადღებას.
QUOTE
7) დეველოპმენტისთვის FireFox და FireBug არის must!!!

ნუ ეს აუცილებელია, +Web developer extension.

QUOTE
6) jQuery - ესეც შესანიშნავი რამ არის უბრალოდ შედარებით ძალიან ოდნავ ნელია mootools - ზე...

პერფორმენსი არ ვიცი მაგრამ ძალიან კარგი ბიბლიოთეკაა, ძალიან დამრეცი სწავლის მრუდით smile.gif ძალიან პრაგმატული მეთოდოლოგიით, ყველაზე მეტი ფლაგინით (http://docs.jquery.com/Plugins), ძალიან მარტივი და მოხერხებული საშუალებებით როგორც რემოუთინგისთვის, ისე სხვა რაღაცეებისთვის.

მონაცემთა ფორმატისთვის მარტივი და მოხერხებული რამეა json. php-ში მასივის json-ენკოდირება შეგიძლია HTML_AJAX - შემავალი HTML_AJAX_JSON -ით (http://pear.php.net/package/HTML_AJAX) - ამ HTML_AJAX -ში ბევრი გამოსადეგი რამეა, გადახედე, თუ რამე კარგს ნახავ ჩვენც გვითხარი smile.gif კიდევ შეგიძლია გამოიყენო FastJSON. კლიენტიდან სერვერზე კი შეგიძლია ჩვეულებრივ url ფორმატში გაგზავნო მონაცემები(jquery-ითი ეს ადვილია).

ბიბლიოთეკები ძალიან ბევრია და სხვადასხვა პლიუს/მინუსები აქვთ.
mootools გავს jquery-ის რაღაცეებით, ესეც მარტივი და კარგია, ზოგ რამეში სჯობია კიდეც,
Ext არის ვიზუალური ვიდჯეტების ბიბლიოთეკა, მუშაობს YUI-სთან, prototype-თან, ან jquery-სთან ერთად.


--------------------
კოვზი არ არსებობს (-;
იოსები
სუპერ მემბერი :P


*****
ჯგუფი: Registered
წერილები: 1504
წევრი No.: 2694
რეგისტრ.: 14-September 03

გამოგზავნილია: 22 Jun 2007, 13:15  #5942111      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი · icq
Pixel_misha

QUOTE
Ext არის ვიზუალური ვიდჯეტების ბიბლიოთეკა,

ძალიან ნელია... ვერ დავუდე მაგ ბიბლიოთეკას გული არადა კომპონენტების თვალსაზრისით ალბათ საუკეთესოა...



Gode
ესე იგი თუ შენით გაქვს გადაწყვეტილი ფრეიმვორკის დაწერა რამდენიმე რეკომენდაციას მოგცემ.



1) აუცილებლად ძალიან ღრმად უნდა გაერკვიო java_script - ში, უნდა შეისწავლო მისი OOP მხარე საფუძვლიანად;
2) საფუძვლიანად უნდა გაერკვიო DOM - ში;
3) უნდა დაივიწყო ზოგადად PHP - ს დებილური იდეოლოგია რომ თავიდან აიცილო პრობლემები, უნდა გაითავისო კლიენტ საიდ დეველოპმენტის ყველა დეტალი;
4) java_script აუცილებლად მოდულარული უნდა იყოს, უნდა გამოიყენო ნეიმსპეისები და ასე შემდეგ...
5) იმისათვის რომ მინიმუმამდე დაიყვანო ბრაუზერებს შორის გაუგებრობები აუცილებლად ყველა დოკუმენტში უნდა გამოიყენო მინიმუმ XHTML transitional დოკ ტაიპი...
6) შენი ამოცანა უნდა იყოს დაახლოვებით ასეთი: დოკემენტზე კლიკავ ან რაიმე ლინკს ან რაიმე ღილაკს და სერვერის მხარეს შენი რიქვესტი ხვდება პირდაპირ რომელიმე ფუნქციაში ან კლასის მეთოდში, ამისათვის შეგიძლია ან კომანდ პატერნის გამოყენება პირდაპირ ან უფრო მაღალ დონეზე გადაწყვეტა ისე რომ ავტომატიზებული გახდეს ეგ ყველაფერი;
7) ძალიან კარგი იქნება თუ გაარჩევ xajax - ს

რისი დაწერა მოგიწევს კლიენტის მხარეს

1) HttpRequest კლასი მთლიანად კლიენტიდან სერვერზე გასაგზავნად საჭირო სრული ფუნქციონალით, აქ არ იგულისხმება მხოლოდ რიქვესტის გაგზავნა, აქ საჭიროა ფორმის სერიალიზაცია (ანუ param=value&param1=value1&paramn=valuen ფორმატში), ასევე URL - ის ენკოდისთვის აუცილებლად დაგჭირდება encodeURIComponent ფუნქცია ეს ყველა გაუგებრობას აგაცილებს თავიდან...
2) HttpResponse ამ კლასის მეთოდები უშუალოდ უნდა იყოს გამოყენებული პასუხის დასამუშავებლად და ავტომატურად უნდა იძახებოდეს onreadystatechanged ივენთის წარმოქმნის დროს;
3) უნდა ჩამოაყალიბო რესპონსის სპეციფიკაცია და გარდაქმნა შესაბამის ფორმატში მე რეკომენდაციას ვუწევ XML - ს და არა JSON - ს, რადგან თუ JSON დაგჭირდება პირდაპირ შეგიძლია XML - ში ჩადო ანუ CDATA სექციაში და დავუშვათ ტეგს მიუთითო ატრიბუტი type="json" რომ პროცესორი მიხვდეს და evаl ავტომატურად გაუკეთოს და დაგიბრუნოს გამზადებული ობიექტი
4) არასოდეს არ გამოიყენო პირდაპირ ტექსტი რესპონსში, მისი ჩადება ასევე შესაძლებელია XML - ში;
5) რესპონსი განიხილე როგორც ე.წ. multiple response რადგან XML გაძლევს იმის საშუალებას რომ სერვერიდან მონაცემები სტრუქტურირებულად დააბრუნო და ერთი რიქვესტისთვის დააბრუნო ისეთი პასუხი რომელიც განკუთვნილი იქნება დოკუმენტის მრავალი სეგმენტისთვის;

მცირე რეკომენდაციები ბრაუზერების შესახებ:
1) წინასწარვე განეწვე იმისათვის რომ IE მის შემქმნელს დაგაწყევლინებს biggrin.gif
2) IE - ში ხდება რისპონსის კეშირება და რიქვესთს აუცილებლად უნდა გააყოლო რამე fake პარამეტრი რომ ეს აირიდო თავიდან, მაგალითად "?nocache=" + (new Date().getTime())
3) აირიდე თავიდან რიქვესტის დროს setRequestHeader მეთოდის გამოყენება, ოპერა და საფარი არ იძლევიან მაგის უფლებას;
4) თუ წააწყდები ბრაუზერებს შორის არათავსებადობას არ გამოიგონო არაფერი, ჯერ შეეცადე რაიმე ისეთი გამოსავალი იპოვო რომელიც ყველგან ერთნაირად იმუშავებს, ეს უმეტეს შემთხვევაში შესაძლებელია;
5) DOM - ში არსებული არათავსებადობების თავიდან არიდება უმეტეს წილად ისე შეიძლება მოაგვარო რომ კოდის განცალკევება არ დაგჭირდეს
6) DOM ელემენტების რეფერენსებთან ძალიან ფრთხილად იყავი განსაკუთრებით IE - ში, სასურველია თუ გამოყენებული ელემენტების dereference - ს მაშინათვე გააკეთებ როდესაც მის დამუშავებს მორჩები;
7) საფუძვლიანად გაარჩიე Event მენეჯმენტი იმიტომ რომ ყველა ბრაუზერი იყენებს სტანდარტულ მოდელს ხოლო IE - ს თავისი მოდელი აქვს, რაიმე ვრაპერი დაგჭირდება მაგისთვის რომ ეგ დეტალები მიმალო და ხელი არ შეგეშალოს;
8) XHTML დოკუმენტში აირიდე თავიდან ასეთი რამეები <a onclick="doSomething()"> ან <div onmouseover="tralala()", ანუ ივენთ ატრიბუტები არ გამოიყენო შეეცადე ყველაფერი გარედან მოხდეს ისე რომ თვითონ დოკუმენტში მსგავსი კოდი არ ფიგურირებდეს;
9) ცოტაოდენი რამ მეც მიწერია ბლოგზე და კიდევ მივამატებ ბევრ რამეს, თუ გადაიკითხავ ბევრ დეტალს ნახავ ისეთს რაზეც მე ცხვირპირი ავილეწე თავის დროზე და საკმაოდ არასასიამოვნო პრობლემებს აგარიდებს თავიდან :დარცხვენილი სმილე: wink.gif

დოკუმენტაციას რაც შეეხება მე PDF - ების მოყვარული არ ვარ და მხოლოდ წიგნებს ვკითხულობ მაგრამ შემიძლია შთაბეჭდილებები გაგიზიარო და იქნება ფორუმელებმა PDF - ები დაგვიშეარონ:

java_script: The Definitive Guide - ძალიან ძალიან კარგი წიგნი, თუმცა ვერ გეტყვი რომ ამ წიგნის წაკითხვის მერე ქვეყანას დააქცევ
http://www.amazon.com/java_script-Definitiv...82502966&sr=8-1

Foundations of Ajax (Foundation) - ძალიან კარგი წიგნია Ajax - ის ანაბანას გასაგებად
http://www.amazon.com/Foundations-Ajax-Fou...2503135&sr=1-18

Pro java_script Techniques - კაცური წიგნია jQuery - ს ავტორისგან
http://www.amazon.com/Pro-java_script-Techn...82502966&sr=8-5

DOM Scripting: Web Design with java_script and the Document Object Model - ძალიან კარგი წიგნია
http://www.amazon.com/DOM-Scripting-Design...82502966&sr=8-7

Bulletproof Ajax - ეს ჯერ არ ჩამომსვლია მაგრამ მითხრეს რომ ძალიან კარგი წიგნიაო
http://www.amazon.com/Bulletproof-Ajax-Voi...82502966&sr=8-7

AJAX and PHP: Building Responsive Web Applications - ამ წიგნის სათაურმა არ მოგატყუოს და ტყუილად არ დახარჯო დრო მაგარი ლეღვობაა...
http://www.amazon.com/AJAX-PHP-Building-Re...82503414&sr=8-3

Ajax in Action - ეს წიგნი კაპიკად არ ვარგა დრო არ დახარჯო
http://www.amazon.com/Ajax-Action-Dave-Cra...82503135&sr=1-2

ასევე მიეძალე ამ რესურსებს:

Yahoo - ს არქიტექტორის საიტი
http://www.crockford.com/

Peter-Paul Koch - ის ძალიან ძალიან კარგი რესურსი, ასევე წიგნიც აქვს დაწერილი მაგრამ ჯერ არ მომეცა წაკითხვის ბედნიერება ამბობენ კარგიაო...
http://www.quirksmode.org/

დანარჩენს კონკრეტული საჭიროებიდან გამომდინარე რითიც შევძლება დაგეხმარები, წარმატებები wink.gif
Gode
ასტეროიდი ბ612


******
ჯგუფი: Members
წერილები: 8313
წევრი No.: 1340
რეგისტრ.: 19-October 02

გამოგზავნილია: 22 Jun 2007, 13:31  #5942228      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი
იოსები
იიფფფ! აი მესმის პასუხიიიი! smile.gif

კარგია, მადლობა. რაღაცეები მაქედან გასაგებია ისედაც, რაღაცეებზე (მაგალიტად კეშირებაზე smile.gif ) უკვე მოვიტეხე კისერი. რაღაცეები, უფრო სწორედ ბლომად რაღაცეები გასაწრჩევია/სასწავლია/გასაკეთებელია.

გავარჩევთ/ვისწავლით/გავაკეთებთ.

მადლობა კიდევ ერთხელ. ჩავუჯდები აწი ნელ-ნელა და რამე გამოვა ალბათ. smile.gif

ხანდახან შეგაწუხწებ ხოლმე smile.gif
იოსები
სუპერ მემბერი :P


*****
ჯგუფი: Registered
წერილები: 1504
წევრი No.: 2694
რეგისტრ.: 14-September 03

გამოგზავნილია: 22 Jun 2007, 13:34  #5942251      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი · icq
Gode

არაფრის wink.gif
karaoke
Life Is Too Short


******
ჯგუფი: Members
წერილები: 9236
წევრი No.: 23972
რეგისტრ.: 3-October 06

გამოგზავნილია: 24 Jun 2007, 20:17  #5960928      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა
უფასოდ არაა ეს წიგნები?
---------------------------------------------------


--------------------
დიქტატ 2 ები ,ორატ 2 ები,ღ 2 ები
ყველა ერთი სახეობის სხვადასხვა განშტოებებია . საერთო წინაპარი ყავდათ მაშ....

გვახსოვდეს svani67
მირიან
დასტოინად!


*****
ჯგუფი: Users Awaiting Email Confirmatio
წერილები: 2804
წევრი No.: 735
რეგისტრ.: 17-March 02

გამოგზავნილია: 24 Jun 2007, 21:00  #5961213      · პროფილი · პირადი მიმოწერა · ჩატი
Sams Teach Yourself Ajax in 10 Minutes is a concise introduction to the basics of building Ajax applications and the architecture and operation of these applications. You will learn the techniques employed in using Ajax, introducing Ajax and explaining how it may be used to solve realistic user interface problems. You will be able to immediately begin building web applications, and will have platform from which to explore more advanced aspects of Ajax.

http://bin.ge/?d=7BCD63F4

უმარტივესი წიგნია, სრულად საკმარისია რომ Ajax-ზე ზოგადი წარმოდგენა მაინც შეექმნას კაცს და მარტივი აპლიკაციები ააწყოს. smile.gif



--------------------
ბლიად...
Ottoman
Super Member


****
ჯგუფი: Registered
წერილები: 805
წევრი No.: 23725
რეგისტრ.: 27-September 06

გამოგზავნილია: 24 Jun 2007, 21:15  #5961305      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა
Gode

jQuery - java_script Library (http://www.jquery.com)

Prototype-სთანაც მქონდა შეხება და MooTools-თანაც, მაგრამ ყველაზე კარგი მაინც jQuery არის ( რა თქმა უნდა იმჰო smile.gif ) ჯერ ერთი იმით, რომ დაკომპრესებული 20 კბ-ა, + ძალიან სწრაფია, აქვს ძალიან მარტივი და მოხერხებული selectors (CSS-ის სამივე ვერსიას და ძირიტად xPath-ის მხარდაჭერა აქვს) და რაც ყველაზე მთავარია, სლოგანის არ იყოს, მართლა write less, do more გამოგდის კაცს ბოლოში smile.gif

ავტორს რაც შეეხება არის ძალიან კარგი JS-ს სპეციალისტი, მუშაობს Mozilla-ში. მისი შექმნილი კი არის ეს library, მაგრამ ეხლა თითქმის მთელი მსოფლიოდან არიან A Class დეველოპერები ჩართული მუშაობაში. იხილეთ ავტორის საიტი: http://ejohn.org

ასევე ავტორს აქვს დაწერილი ძალიან კარგი წიგნი - http://jspro.org თავიდან ბოლომდე არ მაქვს წაკითხული, მაგრამ რომ გადავხედე კარგი რამე ჩანს smile.gif
Otory
Insane


*******
ჯგუფი: Members
წერილები: 16589
წევრი No.: 1007
რეგისტრ.: 9-June 02

გამოგზავნილია: 24 Jun 2007, 21:21  #5961350      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი
Ottoman
QUOTE
ასევე ავტორს აქვს დაწერილი ძალიან კარგი წიგნი - http://jspro.org თავიდან ბოლომდე არ მაქვს წაკითხული, მაგრამ რომ გადავხედე კარგი რამე ჩანს

ძალიან საყვარელი წიგნია smile.gif
ეხლა ვკითხულობ...
თითქმის შუაში ვარ (დროის დედაც ვატირე spy.gif ) და საკაიფოა, ასევე მაგარი კაი ედვანსდი wink.gif
aleko205
Super Member


****
ჯგუფი: Registered
წერილები: 925
წევრი No.: 3528
რეგისტრ.: 4-November 03

გამოგზავნილია: 25 Jun 2007, 16:28  #5968737      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა · ვებგვერდი · icq · aim · yim
იოსები
QUOTE
საიტის შემთხვევაში Ajax - ის გამოყენება სასურველია და დასაშვებია მაგალითად რაიმე ფორმის შევსებისა და გაგზავნისათვის... რეიტინგებში/ვოუტინგებში... და ასევე ისეთ შემთხვევებში სადაც კონტენტი არ თამაშობს გადამწვეტ როლს..

არავითარ შემთხვევაში არ უნდა გამოვიყენოთ Ajax საიტის ნავიგაციის მენიუებში! არ უნდა გამოვიყენოთ Ajax მნიშვნელოვანი კონტენტის გამოსატანად...

ანუ სოსოჯან, გულისხმობ იმას, რომ მაგალითად www.myvideo.ge - ზე მთავარი გვერდი იტვირთება Ajax - ით. არა მარტო ფორმა, არამედ ფლეშ ობიექტიც და სურათებიც. აქ საერთო ზომა 120 კბ-ს ზემოთ ადის. ანუ ეს არ არის რეკომენდირებული?


QUOTE
წინასწარვე განეწვე იმისათვის რომ IE მის შემქმნელს დაგაწყევლინებს

არ ასცდეს არცერთი biggrin.gif
მაშინაც შენ მიშველე მახსოვს


--------------------
www.about.ge
Ottoman
Super Member


****
ჯგუფი: Registered
წერილები: 805
წევრი No.: 23725
რეგისტრ.: 27-September 06

გამოგზავნილია: 25 Jun 2007, 16:52  #5969011      · პროფილი · პირადი მიმოწერა · ჩატი · ელფოსტა
aleko205
QUOTE
ანუ ეს არ არის რეკომენდირებული?


QUOTE
QUOTE
myvideoge-ზე Ajax ტექნოლოგიებია ხომ გამოყენებული.?

არაჩვეულებრივი მაგალითი იმისა, თუ სად არის აჯაქსის გამოყენება ზედმეტი და უადგილო biggrin.gif

© როკო

რა თქმა უნდა არაა სასურველი ყველა ნიუანსი აჯაქსში იყოს გაკეთებული. აჯაქსის გამოყენება კარგია ფორმებთან, თეიბლებთან და ა.შ. მოკლედ კონტენტის აჯაქსით ლოადინგი არ ღირს (გამონაკლისი შემთხვევების გარდა). smile.gif
0 წევრი ათვალიერებს ამ თემას (0 სტუმარი და 0 უჩინარი წევრი)
0 წევრი:
Topic Options Pages: (9) [1] 2 3 ... ბოლო » გამოხმაურება · ახალი თემა · ახალი გამოკითხვა

 



ფორუმის სერვერების განთავსებას და ინტერნეტთან კავშირს უზრუნველყოფს: CLOUD9
[ Script Execution time: 0.0384 ]   [ 13 queries used ]   [ GZIP Disabled ]