QGIS 3.0 - කෙසේද, කවදාද සහ කුමක් ද; එයින් ගම්ය වේ
බොහෝ අය අපගෙන්ම මෙසේ අසයි:
QGIS 3.0 නිදහස් කරනු ලබන්නේ කවදාද?
පසුගිය වසරේ (2015) ව්යාපෘතියේ කණ්ඩායම කණ්ඩායම QGIS 3.0 නිදහස් කරන විට හා කෙසේද යන ආකාරය පරීක්ෂා කිරීමට පටන් ගත්තේය. ඔවුන් පොරොන්දු වූ පරිදි, පෝස්ට් පුවත්පතකට අනුව අනිත ග්රේසර්, ඔවුන් QGIS 3.0 දියත් කිරීමට පෙර ඔවුන්ගේ සැලසුම් පරිශීලකයින්ට සහ සංවර්ධකයින්ට පැහැදිලිව දැනුම් දීමට යන ලදී. ඔවුන් මෑතකදී QGIS 3.0 නිකුතුවක් සඳහා සලකා බැලිය යුතු කරුණු කිහිපයක් ඉදිරිපත් කිරීමට උත්සාහ කර ඇති අතර තනතුර අවසානයේ අපගේ අදහස් ඉදිරිපත් කිරීමට අවස්ථාවක් තිබේ.
ඇයි 3.0?
ඔබේ මෘදුකාංගයේ ඒපීඅයි හි විශාල වෙනසක් සිදු කරන අවස්ථා සඳහා සාමාන්යයෙන් ප්රධාන අනුවාදයක් වෙන් කර ඇත. මෙම විවේකය QGIS ව්යාපෘතිය සඳහා සුළු තීරණයක් නොවේ, මන්ද අප අපගේම භාවිතය සඳහා සහ තෙවන පාර්ශවයන්ට සපයනු ලබන සේවාවන් සඳහා QGIS මත යැපෙන ලක්ෂ සංඛ්යාත පරිශීලකයින් වේ.
අලූත් අයුරින් API එක බිඳවැටීම වඩා හොඳ ප්රවේශයන්, නව පුස්තකාල සහ නිවැරදි කිරීම් සමඟ අතීතයේ දී සකස් කර ඇති වාස්තු විද්යාව යාවත්කාලීන කිරීමට අවශ්ය වේ.
API එක බිඳවැටීමේ ප්රතිවිපාක මොනවාද?
තවදුරටත් නව API අනුකූල වනු ඇත මෙම කතුවරුන් කරන්න ඇති සංවර්ධනය ප්ලගින සිය ගණනක් බිඳ හැකි QGIS 3.0 දී API මෙම උල්ලංඝනය කළ විට එය විශාල බලපෑමක් ඇති කරනු ඇත බව ය එක් හේතුවක්, නව API සමඟ ගැළපීම සහතික කිරීම සඳහා ඔවුන්ගේ සංවර්ධන කටයුතු සමාලෝචනය කිරීම.
අවශ්ය වෙනස්කම්වල ප්රමාණය තරමක් දුරට රඳා පවතී:
- API වෙත වෙනස්කම් කීපයක් වර්තමානයේ ක්රියාකාරීත්වය කෙරෙහි බලපායි.
ප්ලගින කතුවරුන් API හි කොටස් කොපමණ සංඛ්යාවක් වෙනස් කළ යුතුද යන්න කොපමණ සංඛ්යාවක්ද? -
3.0 සඳහා ප්රධාන වෙනස්කම් වනු ඇත?
3.0 හි ඔබ වෙනස් කිරීමට බලාපොරොත්තු වන ප්රධාන ක්ෂේත්ර හතරක් තිබේ:
QT4 වෙත Qt5 යාවත්කාලීන කිරීම: QGIS ඉහළ මට්ටමේ ගොඩනගා ඇති මූලික පුස්තකාල කට්ටලය මෙයයි, අපි වේදිකාවේ CORE-ක්රියාකාරී මට්ටම ගැන කතා කරමු. QT මතක කළමනාකරණය, සම්බන්ධතා මෙහෙයුම් සහ ග්රැෆික් කළමනාකරණය සිදු කිරීමට පුස්තකාල සපයයි. Qt4 (QGIS දැනට පදනම් වී ඇති) Qt පුස්තකාල නඩත්තු කරන්නන් විසින් දැනට සංවර්ධනය කර නොමැති අතර සමහර වේදිකා (උදා: OS X) සමඟ ක්රියාකාරී ගැටළු ඇති විය හැකි අතර ද්විමය අනුවාද (උදා: Debian Testing සහ මීළඟ Debian නිකුතුව) කළමනාකරණය කිරීම පවා පහසු කරයි. "දිගු කරන්න"). QGIS QT5 වෙත ගෙන ඒමේ ක්රියාවලියට දැනටමත් වැදගත් අත්තිකාරමක් ඇත (ප්රධාන වශයෙන් Matthias Kuhn කර ඇති දේ) එය Marco Bernasocchi සමඟ එක්ව සම්පූර්ණයෙන්ම QT5 මත පදනම් වූ Android "QField" මත දුම් දමනවා. කෙසේ වෙතත්, QGIS මත එහි බලපෑම හේතුවෙන් නව QT5 ලබා ගැනීමට සහ ක්රියාත්මක කිරීමේදී යම් සීමාවන් තිබේ - විශේෂයෙන්ම වෙබ් බ්රවුසර විජට් සමඟ (ප්රධාන වශයෙන් Composer හි භාවිතා වන අතර QGIS හි තවත් ස්ථාන කිහිපයකි).
PyQt4 වෙත PyQt5 වෙත යාවත්කාලීන කරන්න: QGIS Python API පදනම් කරගත් Qt සඳහා Python භාෂාව වෙත සාපේක්ෂ වෙනස්කම් වේ. මෙම QT5 C ++ පුස්තකාල වෙනස් පැන නගින්නේ, ද PyQt5 පිඹුරා පුස්තකාලයට මාරු කිරීමට ඔවුන් Python QT5 දී නව API ප්රයෝජන ගැනීමට හැකි වන පරිදි ඇතැයි අපේක්ෂා කෙරේ.
2.7: Python 3 යේ පයිතන් වෙත යාවත්කාලීන කිරීම දැනට සියල්ල ක්රියාත්මක වන්නේ පයිතන් 2.7 මත ය. පයිතන් 3 යනු පයිතන්ගේ නවතම අනුවාදය වන අතර එම ව්යාපෘතියට නායකත්වය දෙන අය විසින් නිර්දේශ කරනු ලැබේ. පයිතන් 2 පයිතන් 3 සමඟ තරමක් නොගැලපේ (QGIS 2 සහ Qgis 3 අතර නොගැලපීමට බොහෝ දුරට සමානුපාතික වේ). බොහෝ සංවර්ධකයින් විසින් පයිතන් 3 පයිතන් 2 සමඟ බොහෝ දුරට පසුගාමී අනුකූලතාවයක් ඇති කර ඇත, නමුත් පසුගාමී අනුකූලතාව එතරම් විශාල නොවේ.
QGIS API යේම දියුණු කිරීම: අනුවාද අතර API ගැළපුම පවත්වාගෙන යාමේ එක් ගැටලුවක් නම්, දිගු කාලයක් සඳහා ඔබේ නිර්මාණ තේරීම් සමඟ ජීවත් වීමට සිදු වීමයි. කුඩා නිකුතු මාලාවකින් API බිඳ නොදැමීමට QGIS හි සෑම උත්සාහයක්ම ගනු ලැබේ. දැනට සහය නොදක්වන API සමඟින් 3.0 සඳහා QGIS අනුවාදයක් නිකුත් කිරීම API හි අප අනුකූල නොවන දේවල් සවි කිරීමෙන් "නිවස පිරිසිදු කිරීමට" අපට අවස්ථාවක් ලබා දෙනු ඇත. ඔබට තාවකාලික ලැයිස්තුවක් දැකිය හැකිය 3.0 API සඳහා යෝජිත වෙනස්කම්.
3.0 API වෙනස් කිරීම සඳහා සහාය දක්වන ආකාරය
දැනටමත් සඳහන් කර ඇති පරිදි, 3.0 අනුවාදය QGIS අනුවාදය 2.x සමඟ බිඳී යනු ඇති අතර වර්තමාන API මත පදනම් වූ බොහෝ ප්ලගීන, පවතින යෙදුම් සහ වෙනත් කේත කැඩී යාමේ හැකියාවක් ඇත. වෙනස්කම් අවම කිරීම සඳහා කුමක් කළ හැකිද? මතියස් කුන්, ජර්ගන් ෆිෂර්, නියාල් ඩෝසන්, මාටින් ඩොබියාස් සහ අනෙකුත් ඉහළ පෙළේ සංවර්ධකයින් ඒපීඅයි බිඳීමේ වෙනස්කම් අවම කිරීම සඳහා ක්රම සොයමින් සිටින අතර ඊළඟ පරම්පරාවේ පුස්තකාල සහ එහි අභ්යන්තර ඒපීඅයි මත පදනම්ව QGIS කේත පදනම ඉදිරියට ගෙන යයි. QGIS ව්යාපෘති මෙහෙයුම් කමිටුවේ අවසන් රැස්වීමේදී අපි විවිධ හැකියාවන්ගෙන් භූ විද්යාත්මක තොරතුරු ලබා ගත්තෙමු. පහත වගුවේ මතියස් කුන් කාරුණිකව සාරාංශගත කර ඇති දේ සාරාංශගත කරන අතර, මෙම ලිපියෙන් අපි අර්ධ වශයෙන් අක්ෂර පරිවර්තනය කිරීමට උත්සාහ කර ඇති දේ අනුව ඔබගේ බ්ලොග් අඩවියේ පළ කර ඇත:
QGIS 2.14 LTR |
QGIS 2.16 ??? | QGIS 3.0 | |
නිකුත් කළ දිනය | පෙබරවාරි අවසානය | 4 මාස පසු 2.14 | චක්රය 8 මාස? |
සටහන් | Python 3 අනුකූල සහ PyQt5 අනුකූල වන ප්රධාන QGIS හි Python කේතය යාවත්කාලීන කිරීම (ප්රධාන ක්රියාකාරිත්වය සඳහා අර්ධීය ක්රියාත්මක කිරීම, එනම් කොන්සෝලය, python core ප්ලගීන ආදිය) | ||
Qt4 | Si
ඩේබියන් ස්ට්රෙට්ච් (වසරක් තුලදී) (වෙබ්කිට් ඉවත් කර ඇත) |
ඔව් | නැත |
Qt5 | නැත
QWebView Misses - සියලු වේදිකා මත නව ආදේශනයක් නොවේ. QPainter එන්ජිම ද මග හැරී ඇත. |
Si | Si |
PyQt4 | Si | Si | නැත |
PyQt5 | නැත | Si | Si |
Python 2 | Si | Si | නැත |
Python 3 | නැත | Si | Si |
API Cleanup | නැත | නැත | Si |
මාළුන් PyQt5 -> PyQt4 ~ 90% Backward අනුකූලතාව සපයයි |
නැත | Si | Si |
ප්රධාන ද්විමය | පදනම් කරගත් Qt4 | පදනම් කරගත් Qt4 | පදනම් කරගත් Qt5 |
අරමුදල් ප්රමුඛතාවය | පයිතන් මාළුන් |
මතියස්ගේ යෝජනාව ගැන මතක තබා ගැනීමට වැදගත් කාරණා දෙකක් තිබේ:
පළමු අදියර තුළවැඩ Qt2, PyQt5 සහ Python 5 සහාය 3.0.x සහාය QT4, Python 4 භාවිතා PyQt2.7 සම්පූර්ණ කිරීමට මාලාවක් සිදු කෙරේ. මෙම පළමු අදියරේ දී සිදුකරන ලද සියලු වෙනස්කම් පෙර වෙළුම් 2.x අනුකූල වනු ඇත බව එයින් ගම්ය වේ. Python ලක්ෂණ ඇතුලත් කරනු ඇත QT4, PyQt5, Python 5 එරෙහිව සකස් කරන විට පැරණි API PyQt3.0 තවමත් විශේෂයෙන් භාවිතා කරනු ලැබිය හැකි වන පරිදි හඳුන්වා ඇත. Qt4, PyQt4 සහ Python 2.7 එරෙහිව සකස් QGIS භාවිතා කිරීමෙන් ගැළපුම බිඳ නැහැ.
දෙවන අදියරේ දීඑය සම්පූර්ණයෙන්ම Qt3.0 හා PyQt2.7 සඳහා සහයෝගය ඇතුළුව, Python 4 ඉවත්, නව API හඳුන්වා දීම, QGIS 4 නිෂ්පාදනය කිරීමට වැඩ ඇත. පළමු අදියර යටතේ ඇතුළු පිඹුරා නව වගන්ත සැලකිල්ලට QGIS ක 2.x අනුවාද සඳහා සියලු පිඹුරා කේතය සහ සංවර්ධනය දිගටම QGIS වන 3.x සංස්කරණ මත වැඩ කිරීම, පවත්වා ගෙන යනු ඇත. මෙම අදියර ද සමහර ප්ලගින කැඩිය හැක බව QGIS API තුළ වෙනස්කම් හඳුන්වා දීමට අපේක්ෂා කෙරේ. ඇමතීමට මෙම සංස්කරණ 2.x QGIS 3.x QGIS සංස්කරණ සංක්රමණය පහසුකම් කිරීමට උත්සාහ කිරීම මග පෙන්වීම aa සංක්රමණය ලබා දෙනු ඇත.
අධික්ෂණය කරන්න
QGIS 3.0 වෙත සංක්රමණය අඩු වේදනා ඇති බව තහවුරු කිරීම සඳහා අවශ්ය උපක්රම කිහිපයක් තිබේ.
- 1. එස්ඉහත දක්වා ඇති ප්රවේශය මඟින් ප්ලගීන වල පයිතන් ස්ක්රිප්ටින් කිරීම සඳහා වන වැඩ ප්රමාණය අවම කිරීමට උත්සාහ කරන අතරම මෙය 100% ක් අවශ්ය නොවන බව සැලකිල්ලට ගත යුතුය. බොහෝ විට කේතය නවීකරණය කළ යුතු අවස්ථා ඇති අතර අවම වශයෙන් එය නිසි ලෙස ක්රියාත්මක වන බව සහතික කිරීම සඳහා එය සංශෝධනය කිරීමට සිදුවනු ඇත.
2. මෙම සංක්රමණ ක්රියාවලිය සඳහා ස්වේච්ඡාවෙන් තම කාලය ආයෝජනය කරන සංවර්ධකයින්ට ගෙවීම සඳහා විධිමත් ලෙස ස්ථාපිත මූල්ය සම්පතක් නොමැත. මේ නිසා, ක්රියාවලියේ සෑම කොටසක්ම කොපමණ කාලයක් ගතවේද යන්න සඳහා නිශ්චිත කාල රාමු ලබා දීම ඉතා අපහසු වනු ඇත. සැලසුම් කිරීමේදී මෙම අවිනිශ්චිතතාව සැලකිල්ලට ගත යුතුය. මෙය සිදු කිරීම සඳහා පරිත්යාගයන් සාදරයෙන් පිළිගනිමු.
3. QGIS 2.x ශ්රේණි සඳහා නව විශේෂාංග සඳහා අරමුදල් සපයන සංවර්ධකයින් සහ ආයතන එහි සිටිය හැකි අතර මෙය ඔබගේ කාර්යයට බලපායි. QGIS 3.x වේදිකාවට සංක්රමණය වීමට මුහුණ දීම සඳහා නිශ්චිත ප්රතිපාදනයක් වන මෙම ව්යාපෘතිවල සැලසුම් සහ අයවැය ඇතුළත් කිරීම අවශ්ය වේ.
4. QGIS කණ්ඩායම "සම්පූර්ණ වෙනසක්" මත ක්රියා කරන්නේ නම්, QGIS 3.0 වෙත අඛණ්ඩ යාවත්කාලීන කිරීම් හේතුවෙන් QGIS අස්ථායී සහ නිරන්තරයෙන් වෙනස් වන සාපේක්ෂව කෙටි කාලයක් පවතිනු ඇත.
4. ඔබ 'පරිණාමීය' ආකාරයකට සංවර්ධනය කරන්නේ නම්, 3.0 සංවර්ධනය සඳහා විශ්වාසවන්ත සංවර්ධකයින් පිරිසක් ඔබ සතුව නොමැති නම් සහ එය වරායට සූදානම් කිරීම සඳහා වැඩි කාලයක් ගත වීමේ අවදානම ඔබ දරයි.යෝජනා
ඉහත සියලු තොරතුරු ආලෝකය අනුව, ක්රියා මාර්ග දෙකෙන් එකක් යෝජනා කරනු ලැබේ:
1 යෝජනාව:
තාවකාලික අනුවාදය 2.16 නිකුත් කර මාස 3.0 ක සංවර්ධන කවුළුවක් සහිතව 8 අනුවාදය ප්රමුඛතාවයක් ලෙස වැඩ කිරීමට පටන් ගන්න. 2.16 අනුවාදයේ සිදු කරන ලද වෙනස්කම් 3.0 අනුවාදය සමඟ අනුකූල වීමට උත්සාහ කරනු ඇත (python3 / pytq5 බලන්න).
2 යෝජනාව:
QT3.0, Python 5 සහ PyQt3.0 මත දිගු කාලීන තිරයකින් 5 ආරම්භ කරන්න. 3.0 මත සිය කටයුතු කිරීමට සංවර්ධකයින්ගෙන් ඉල්ලා සිටිමු. 2 හි සූදානම් වන තෙක් 3.0.x අනුවාදයන් නිතිපතා අනුරූපව කරගෙන යන්න.
විකල්ප යෝජනා
විකල්ප යෝජනාවක් තිබේද? QGIS හැකි විකල්ප ගැන දැන ගැනීමට උනන්දු වෙයි. ඔබට යෝජනාවක් ඉදිරිපත් කිරීමට අවශ්ය නම් කරුණාකර එවන්න tim@qgis.org "QGIS 3.0 යෝජනාව" යන මාතෘකාව සමඟ.
ඒ QGIS බ්ලොග්, මෙම ප්රකාශනය ප්රකාශයට පත් විය.