Line 25: | Line 25: | ||
<div class="header">Implementation</div> | <div class="header">Implementation</div> | ||
<div class="menu"> | <div class="menu"> | ||
− | < | + | <b>Server Part</b> |
<a class="item leftnav-item" href="#Bricks Data">About the Bricks Data</a> | <a class="item leftnav-item" href="#Bricks Data">About the Bricks Data</a> | ||
<a class="item leftnav-item" href="#Data Organizing">About Data Organizing</a> | <a class="item leftnav-item" href="#Data Organizing">About Data Organizing</a> | ||
<a class="item leftnav-item" href="#Search Engine">About Search Engine</a> | <a class="item leftnav-item" href="#Search Engine">About Search Engine</a> | ||
− | < | + | <b>Frontend Part</b> |
<a class="item leftnav-item" href="#UI">About UI</a> | <a class="item leftnav-item" href="#UI">About UI</a> | ||
<a class="item leftnav-item" href="#Sortable">About Sortable</a> | <a class="item leftnav-item" href="#Sortable">About Sortable</a> |
Revision as of 06:38, 15 October 2018
Implementation
Server Part
The server of Bioeditor is written in Python 3.6, which is a flexible and cross-platform language and can reduce the learning costs we develop. Django allows fast prototyping and large-scale deployment, that's why we choose Django to be the basic framework.
About the Bricks Data
About Data Organizing
The initial data will be imported into a separate database.Bioeditor will link to it by creating virtual tables using MySQL's database view technology.Using database views may lower the speed of querying, but it also has a lot of benefits. On the one hand,it's easy to get started.Users don't need to care about the complex structure behind. On the other hand,it's safety for beginners, users who use views can only access the result set they are allowed to query.
About Search Engine
We followed last year's filtering of initial data to reduce the impact of unwanted bricks on search efficiency.We used natural language processing during the search process. After the language model is established, the extraction of text keywords is realized by processing such as statistical features such as TF and IDF. So that our search results are more in line with the needs of users. At the same time, we have made the search conditions more diversified.Users can find the bricks they need more conveniently under more query conditions. We will recalculate the ranking weights at regular intervals. The reason for not evaluating them in real time is that the task may update the whole table and become time-consuming.
Frontend Part
In most templating systems,any changes that the user makes to the view are not reflected in the model. This means that the developer has to write code that constantly synchronize the view with the model and the model with the view. So we choose the Angular template, which works differently. Any changes to the view are immediately reflected in the model, and any changes in the model are propagated to the view.You can think of the view as simply an instant projection of your model.
About UI
We choose NG-ZORRA as our basic framework. NG-ZORRA is a UI framework developed by Alibaba Group based on Angular template.NG-ZORRA provides us with multiple elegant components and comfortable visual experience. In addition,we also added many wonderful customized conponents and styles to improve the user experience.
About Sortable
When researchs writes an academic report,the scholae could click and drag the element of experimental process from the list to a new location in the report.Obviously,It is convenient for them to write experimental reports.