tl;dr بعد 4 سنوات، تم تحديث المشاريع بشكل كبير وهي الآن مختبرة جيدًا وناضجة.
في يوليو 2020، كتبت على هذه المنصة عن Geo2tz، وهي واجهة برمجة تطبيقات بقية لاسترداد المنطقة الزمنية من إحداثيات خطوط الطول والعرض.
لقد قمت بتحديث المشروع بشكل متقطع من وقت لآخر، والآن، بعد مرور أربع سنوات، حدث شيء دفعني إلى إعطائه بعض الحب والتأكد من تحديثه، مما أدى إلى إعادة كتابة المحرك بالكامل الذي يقويها، وهذا المنشور يدور حول أسباب إعادة الكتابة هذه وما هي نتائجها.
عندما نشرت المشروع في عام 2020، كنت أعمل على مشروع آخر، وكنت بحاجة إلى شيء مثل Geo2tz، لكن لم أتمكن من العثور على أي شيء يناسب متطلباتي، لذلك قررت إنشائه من خلال تجميع إطار عمل الويب، بيانات المنطقة الزمنية والمكتبة التي كانت توفر المنطق لمعالجة المناطق الزمنية والاستعلام عنها GeoJson، وكان هذا كل شيء.
وبالتقدم سريعًا إلى بداية عام 2023، ظهرت لي مشكلة مفتوحة لشخص يشكو من فقدان مجموعة من الإحداثيات، ولكن يبدو أنها كانت مشكلة في مجموعة البيانات، لذلك لم يكن هناك الكثير للقيام به. لكن في بداية عام 2024 أشار أحدهم إلى أن الخدمة لا تعمل بالشكل الصحيح بالنسبة للإحداثيات الأخرى.
من الواضح أن شيئًا ما كان سيئًا، وبما أن هناك أشخاصًا استغرقوا وقتًا للتعليق، فقد أخذت الأمر على محمل الجد للتحقق مما يحدث. ما اكتشفته هو أن المشكلات كانت تأتي من المكتبة التي كنت أستخدمها لإدارة بيانات المنطقة الزمنية، وتوقف تحديث المكتبة وكانت في الواقع تعرض نتائج غير صحيحة.
لقد استغرقت وقتًا ممتعًا للقيام بذلك، لن أكذب، ولكن في النهاية، قمت بإعادة كتابة محلل GeoJSON، وأعدت هندسة الفهرس والخوارزمية لمطابقة المنطقة الزمنية من الإحداثيات، وأضفت الكثير من الاختبارات للتأكد من أن Geo2tz يتصرف بشكل صحيح ولدينا هنا إصدار جديد لامع (2.4.0) جاهز للاستخدام!
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3