Playground

Blockly'nin çekirdeğinde bilgisayar korsanlığı yaparken veya bir eklenti geliştirirken, Gaming aracı son derece faydalı bir araçtır. Test, hata ayıklama veya prototip oluşturma için kullanabileceğiniz önceden yapılandırılmış bir Blockly örneği içerir. Google'da, Blockly'nin gelişiminin neredeyse tamamı oyun alanı kullanılarak gerçekleşiyor. Önizleme olarak, demo sunucusundaki basit oyun alanını burada görebilirsiniz.

Core Blockly için 3 tür oyun alanı vardır: basit, gelişmiş ve çok. Blok örneklerde genellikle yalnızca gelişmiş oyun alanı kullanılır.

Ön koşullar

Blockly artık Closure modülü sistemini kullanıyor. Yüklenme şekilleri nedeniyle, derlenmemiş Kapatma modülleri bir http: veya https: URL'sinden getirilmelidir ve doğrudan file: URL'lerinden getirilemez. Sonuç olarak, oyun alanını derlenmemiş modda yüklemek için yerel bir web sunucusundan yüklemeniz gerekir.

Yerel bir sunucu başlatan ve Blockly modüllerini yüklemek için gerekli tüm kodları yükleyen bir komut dosyası oluşturduk. Tüm bağımlılıkları yüklemek için npm makinenizde yüklü olması ve Blockly kökünden npm install işlemini çalıştırmanız gerekir.

Internet Explorer kullanarak

Blockly, artık kod tabanında Internet Explorer ile uyumlu olmayabilecek gelişmiş özellikleri kullanıyor. Sıkıştırılmış (derlenmiş) kodda, bu özellikler IE ile çalışacak şekilde aktarılır ancak sıkıştırılmamış kodun yüklenmesi çalışmayabilir. Oyun alanını IE'de, yerel bir http sunucusu üzerinden bile yüklerseniz, oyun alanı uyumluluğu sağlamak için sıkıştırılmış Blockly kodunu otomatik olarak yükler. Oyun alanındaki değişiklikleri sıkıştırılmış modda test etme hakkında daha fazla bilgi için "Oyun alanlarına doğrudan erişme" bölümüne bakın.

Basit Oyun Alanı

Sade oyun alanı, diğer iki oyun alanının temelini oluşturur. Bir araç kutusu ile çalışma alanı görüntüler ve sınırlı sayıda ayarı düzenlemenize olanak tanır.

Oyun alanını açmak için koşarak

npm run start

kökten geliyor. 8080 bağlantı noktasında başka bir şey dinlemediğinizden emin olun. Bu komut, Blockly modüllerini barındıran bir sunucu başlatır ve tarayıcınızı otomatik olarak demo sayfasına açar. Oyun alanını kapatmaya hazır olduğunuzda işlemi sonlandırın (Mac ve Linux ortamlarında ctrl-c).

Oyun alanında şu özellikler yer alır:

  • Hızlı geliştirme için tüm kodlar sıkıştırılmaz.
  • Tüm varsayılan engellemeler (kullanımdan kaldırılmış olanlar hariç).
  • Tüm dil oluşturucuları (JavaScript, Python, PHP, Lua ve Dart).
  • Çalışma alanı durumunu serileştirin ve seri durumdan çıkarın (JSON veya XML).
  • LTR ve RTL düzeni arasında geçiş yapın.
  • Araç kutusu düzenleri arasında geçiş yapın.
  • Oluşturucu için stres testleri.
  • Tüm etkinlikleri konsola kaydedin.

Gelişmiş oyun alanı

Gelişmiş oyun alanında, Blockly'de hata ayıklamayı daha da kolaylaştıran ek özellikler bulunur. Bu, aynı zamanda tüm eklentiler için blok halinde örneklerde kullanılan varsayılan oyun alanıdır.

Bu oyun alanında tüm sade oyun alanı özelliklerinin yanı sıra şu özellikler yer alır:

  • Izgara boyutu, yakınlaştırma/taşıma kontrolleri, oluşturucu, tema ve daha fazlası gibi ek ayarlar yapılandırılabilir.
  • Kullanılan ayarlar ve bloklar önbelleğe alınır ve oyun alanı tekrar yüklendiğinde otomatik olarak kullanılır.
  • Her oluşturucunun çıkışını aynı pencerede görün.

Blok örneklerdeki herhangi bir eklenti için gelişmiş oyun alanını başlatmak üzere eklentinin kök dizininden npm run start öğesini çalıştırın. Şu anda aynı anda yalnızca bir eklenti çalışabilir ve bu eklenti 3000 numaralı bağlantı noktasını kullanır. Eklentiyi başlatmakta sorun yaşıyorsanız öncelikle söz konusu bağlantı noktasında başka bir şey dinlemediğinden emin olun.

Çekirdekteki gelişmiş oyun alanını başlatmak için Blokly'nin kökünden npm run start komutunu çalıştırın ve başlığın altındaki "Gelişmiş" bağlantısını tıklayın.

Blockly'nin geliştirici araçları paketini kullanarak gelişmiş oyun alanını içeren kendi test sayfanızı da oluşturabilirsiniz.

Çoklu oyun alanı

Çoklu oyun alanında, LTR modu ve araç kutusunun konumu için farklı yapılandırmalara sahip oyun alanları bulunur. Bu özellik genellikle, Blockly'nin yeni albüm yayınlamadan önce LTR ile ilgili herhangi bir hata verip vermediğini hızlı bir şekilde kontrol etmek için kullanılır. Bu oyun alanını açmak için basit oyun alanına ilişkin adımları izleyin ve ardından URL'yi /tests/multi_playground.html olarak değiştirin.

Değişiklikleri test etme

Oyun alanlarından herhangi birini yerel bir sunucudan çalıştırırken, Blockly'de yaptığınız değişiklikleri görmek için çoğu durumda tek yapmanız gereken sayfayı yenilemektir. Yeni bir dosya eklediyseniz veya bir dosyaya yeni bir bağımlılık eklediyseniz önce npm run build çalıştırmanız gerekebilir. Bu işlem, bağımlılıkların doğru şekilde yüklendiğinden emin olmak için test/deps.js dosyasını günceller ve ardından sayfayı yenileyin.

Bir eklentinin gelişmiş oyun alanını çalıştırıyorsanız sayfayı yenilemeniz bile gerekmez. Değişiklikler otomatik olarak çalışır durumda yüklenir.

Oyun alanlarına doğrudan erişim

Daha önce, basit oyun alanına doğrudan tarayıcınızda test/playground.html dosyasına gidilerek yerel olarak erişiliyordu. Basit ve çok sayıda oyun alanında bu hâlâ mümkün olsa da artık önerilmemektedir. Bunu yaparsanız oyun alanı, yerel sunucu çalıştırmadığınızı tespit eder ve otomatik olarak sıkıştırılmış Bloklu dosyalar kullanır (daha fazla bilgi için Bloklu dosyaları oluşturma sayfasına bakın) ve Blockly'de bir değişiklik yaptığınızda çekirdeği yeniden oluşturmanız ve değişiklikleri aşamalandırmanız gerekir. Bu sayfalara, demo sitemizde barındırılan örneğimiz gibi uzak bir sunucuda barındırılıyorsa yine erişebilirsiniz. Sıkıştırılmış moddayken arka plan parlak mavi olur.

Gelişmiş oyun alanına file: erişimi üzerinden erişilemez.